标题:c语言汉字库与ASC问题
只看楼主
zkzk1616
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-12-11
结帖率:0
已结贴  问题点数:20 回复次数:2 
c语言汉字库与ASC问题
从txt文件中读取数据,判断其为汉字还是字母,若为汉字,若为汉字,则读取HZK16相关数据,描绘出汉字值,若为字母,则描绘出ASC||值,我读取txt文件后,怎么判断是汉字还是字母,有怎么把数据储存到数组中呢?
搜索更多相关主题的帖子: c语言 ASC 读取 汉字 字母 
2017-12-11 21:32
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:10 
一般汉字在txt中 是分成2个字节 每个字节均大于127(不确定) 但是至少第一个字节是大于127的
也就是说 当你读到大于127的时候 要一起读两个字节 就可能是一个汉字

DO IT YOURSELF !
2017-12-11 21:36
nslookup65
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:24
专家分:192
注 册:2017-12-1
得分:10 
按二进制模式逐字节读取文件,依据汉字编码定义区分汉字。

内容参考自GBK编码定义。一个字符被编码为1或2字节,英文部分使用单字节:00-7F;中文部分使用双字节,首字节:81-FE(没有80或FF),尾字节40-7E、80–FE
中文部分:
汉字编码区间:
第1组:byte1:B0-F7,byte2:A1-FE
第2组:byte1:81-A0,byte2:40-FE
第3组:byte1:AA-FE,byte2:40-A0
标点、符号编码区间:
第1组:byte1:A1-A9,byte2:A1-FE
第2组:byte1:A8-A9,byte2:40-A0
详情参考如下图示:


[此贴子已经被作者于2017-12-12 14:38编辑过]

2017-12-12 14:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-483307-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.144460 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved