关于汉字与Ascii码
GB2312和GBK每一个汉字由2个字节组成,这2个字节的ASCII码大小分别是:
gb2312:
high8 = 0xa1-->0xfe (161 - 254)
low8 = 0xa1-->0xfe (161 - 254)
gbk:
high8 = 0x80-->0xfe (128 - 254)
low8 = 0x40-->0xfe (64 - 254)
GB2312和GBK的区别:http://zhidao.baidu.com/question/40269499
汉字ASCII对照表的打印方法:
- // 打印ASCII汉字编码表
- for(int i = 129; i < 256; ++i) // 129 = 0x81
- {
- for(int j = 64; j < 256; ++j) // 64 = 0x40
- {
- char pchar[3];
- pchar[0] = i;
- pchar[1] = j;
- pchar[2] = '/0';
- cout << pchar << " " << i << "," << j << " ";
- }
- }
知道一个汉字,输出其ASCII码:
- // 知道一个汉字,获取其ASCII编码
- char * pchar = "中";
- //需要先把pchar的每个字符转成unsigned char,
- // 直接用int i = pchar[0],得到的是负值
- unsigned char ci = pchar[0];
- int i = ci;
- unsigned char cj = pchar[1];
- int j = cj;
- cout << pchar << " " << i << "," << j << endl;
- // 输出214,208
知道汉字的ASCII码,输出汉字:
- // 知道汉字的ASCII码输出汉字
- char pchar[3];
- pchar[0] = 214;
- pchar[1] = 208;
- pchar[2] = '/0';
- cout << pchar << endl;
应用,去除文件中除汉字、字母、数字以外的字符:
- // 去除文件中除汉字、字母、数字以外的字符
- // 文件必须是ANSI编码
- CString sFile = readLocalFile(sname);
- char * pTemp = sFile.GetBuffer();
- CString stoWrite = "";
- for(int i = 0; i < strlen(pTemp); ++i)
- {
- int ch = pTemp[i];
- if(ch < 0)
- {
- // 使用unsigned char 读取可以获取128 - 255 之间的数值
- unsigned char c = pTemp[i];
- int itemp = c;
- // 范围选择170 - 254是为了去掉中文标点及其他字符,范围请参考汉字ASCII对照表
- if(itemp >= 170 && itemp <= 254)
- {
- char * pchar = new char[3];
- pchar[2] = '/0';
- pchar[0] = pTemp[i];
- pchar[1] = pTemp[i+1];
- //cout << pchar;
- stoWrite += pchar;
- delete [] pchar;
- }
- // 此时(ch < 0)两个char表示一个汉字,所以跳过第二个char
- ++i;
- }
- else if( (ch >= 97 && ch <= 122) || (ch >= 48 && ch <= 57))
- {
- //cout << pTemp[i];
- stoWrite += pTemp[i];
- }
- }
- writeLocalFile(stoWrite, rname);
关于汉字与Ascii码相关推荐
- 汉字的ascii码值范围_ASCII代码
同学们,我们都知道计算机只能接受二进制信息,很显然直接给出英文的ABCD计算机并不认识,那为何敲击键盘屏幕就可以显示出对应的字符呢? 为了解决这个问题,计算机采用一套编码,每个编码都是唯一的,对应键盘 ...
- python加密规则ascii码值加5_Python使用编码加密输入数据
1.指定方式加密数据 ''' 能够加密的内容是英文和汉字.同时加密并且解密 就是说,一段话中既有中文又有英文,标点符号不用处理. 加密规则,获取ascii码数字,中间用|分割 # 思路提示: prin ...
- 2.1.4 什么是ASCII码?汉字的表示和编码是怎样的?
文章目录: 1.什么是ASCII码? 2.汉字的表示和编码是怎样的? 1.什么是ASCII码? 我们知道我们日常见到的数字(0~9).符号比如:#.%.+.@等.英语字母如:(A~z).(a~z),它 ...
- ASCII码和汉字码
国家标准汉字字符集GB2312-80共收集了共7445个汉字和图形符号,其中汉字6763个,分为二级,一级汉字3755个,二级汉字3008个. 汉字图形符号根据其位置将其分为94个"区&qu ...
- ASCII码格式转回汉字
通常在properties文件中配置中文的属性时,需要将中文转换成ASCII码格式, 这种转换可以通过命令: native2ascii 1.txt 2.txt 来实现,1.txt中内容包含中文,转换后 ...
- 如何使汉字转换为国际化的ascii码
如何使汉字转换为国际化的ascii码 方法一: 1)点击开始按钮,单击运行,输入cmd: 2)进入jdk所在跟目录,例如我的jdk在D盘的跟目录下,我便进入D盘: 3)进入jd ...
- 字符编码ASCII、Unicode 、UTF-8 及实例汉字与Unicode码的相互转化
字符编码ASCII.Unicode .UTF-8 及实例汉字与Unicode码的相互转化 ASCII 码 我们知道,计算机内部,所有信息最终都是一个二进制值.每一个二进制位(bit)有0和1两种状态, ...
- c语言汉字的ascii,C语言中两位ASCII码可以表示汉字
******************************************************** 现在开始分析: 资料一说: "206 210 176 174 214 236 ...
- php中ascii转换为中文,PHP——汉字完美转为ASCII码
前言 对接联通的接口,让我学会了不少PHP偏门函数....,主要对方用的py,我这用的PHP,人家一个函数解决了, 我这还要自己写方法,也是比较蛋疼,但是学到东西还是很开心的~ 代码 字符串转为ASC ...
最新文章
- [C#]用HttpWebRequest加载证书建立SSL通道时发生异常的解决办法
- Java RuntimeException异常处理汇总
- 字节跳动学习笔记:java实例变量和静态变量
- 贝叶斯学习--极大后验概率假设和极大似然假设
- 【数据竞赛】DoubleEnsemble--专治硬样本的神奇集成技术。
- VS2010 断点无法命中的解决方案
- kettle 脚本 java_Kettle 执行SQL脚本
- c++中默认32位int类型转换截取高位部分
- 了解如何解决OSGI捆绑包
- 设计模式之Factory
- pdol链接mysql_MySQL5.7.11免安装版的安装和配置:解决MYSQL服务无法启动问题
- 虚拟法庭、云端判案...法律行业背后的智能技术革新
- 2017-05-24
- 简单方法解决bootstrap3 modal异步加载只一次的问题
- 一个软件,internal version 和external version, 安装有问题
- C#和C++中的float类型
- 梦记录:1204(梦到观世音菩萨像)
- C++primer Plus课本代码(第6章)
- 高中学计算机都是学什么,学计算机高中选什么科目
- 【金猿案例展】上海市儿童基金会——管理会计云平台建设