GB2312转ascii,没道理吧

jackyjkchen 2010-04-28 08:04:37
GB2312本来不就是简体中文代码页所解释的扩展ascii字符么?

转成ascii……今天见到了大量类似的无用转换
...全文
366 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
mstlq 2010-04-28
  • 打赏
  • 举报
回复
淡定,要宽容……
不然心情会不好,心情不好,皮肤不好,皮肤不好,女人缘不好,女人缘不好,心情不好,心情不好,皮肤不好……
jackyjkchen 2010-04-28
  • 打赏
  • 举报
回复
Windows Mobile是纯UTF16的,最多只要考虑终端的UTF16和传输中的UTF8的转换,在Windows EDIT控件中输入字符,根本不用考虑什么GBK和ascii。

结果给那帮二蛋整的这么复杂
jackyjkchen 2010-04-28
  • 打赏
  • 举报
回复
他们是自己写的逻辑,什么ansi-UTF16-ansi,什么ANSI-UNICODE-OEM,还有STL和Windows SDK的乱用……

我彻底疯了,今天头跟我说,都是同学,不要太push……
do_fork 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jackyjkchen 的回复:]

引用 5 楼 do_fork 的回复:
不管是标准ascii还是扩展ascii,都只有1个字节表示能力,不能多个字节组合,
最常见的扩展ascii编码是IBM的那个码表,表示了一些特殊字符,但是仍然不能表示中文,
中文根本就不能使用ascii表示。

gkb中文也好,utf8中文也好,都不是扩展ascii字符,只能算是二进制字节序列.

正因为如此,GB编码转ascii更显得蛋疼了……
[/Quote]

不是蛋疼,是错误,
如果是严谨的库,就直接报错了.

$ echo "我" | iconv -f utf8 -t gbk


$ echo "我" | iconv -f utf8 -t ascii
iconv: illegal input sequence at position 0

白云飘飘飘 2010-04-28
  • 打赏
  • 举报
回复
GB2312的单字节部分是从0x00-0x80。
jackyjkchen 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 do_fork 的回复:]
不管是标准ascii还是扩展ascii,都只有1个字节表示能力,不能多个字节组合,
最常见的扩展ascii编码是IBM的那个码表,表示了一些特殊字符,但是仍然不能表示中文,
中文根本就不能使用ascii表示。

gkb中文也好,utf8中文也好,都不是扩展ascii字符,只能算是二进制字节序列.
[/Quote]
正因为如此,GB编码转ascii更显得蛋疼了不是么?
do_fork 2010-04-28
  • 打赏
  • 举报
回复
不管是标准ascii还是扩展ascii,都只有1个字节表示能力,不能多个字节组合,
最常见的扩展ascii编码是IBM的那个码表,表示了一些特殊字符,但是仍然不能表示中文,
中文根本就不能使用ascii表示。

gkb中文也好,utf8中文也好,都不是扩展ascii字符,只能算是二进制字节序列.
jackyjkchen 2010-04-28
  • 打赏
  • 举报
回复
GB2312要转成ASCII该如何转?如果继续用扩展ASCII那根本不用转,转成标准ASCII根本不可行,因为无法解码,会跟原有的ascii字符冲突
jackyjkchen 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 do_fork 的回复:]
中文字符跟ascii一毛钱关系都没有
[/Quote]

0x00~0x7f是标准ascii,0x7f~0xff是扩展ascii

GB2312就是在代码页936下对扩展ascii的解释。

dos下默认代码页是ibm ascii,所以中文文件名会显示为制表符

Windows英文版用的默认代码页是ANSI ascii,所以GB标准的中文会显示为许多带重音符号西欧字符。

中文Windows下,记事本打开二进制文件之所以经常看到中文,就是因为部分0x7f~0xff的字符撞上了中文内码。

VC里,调试状态下,经常看到“烫烫烫……”或“屯屯屯……”就是用于填充内存的两个0xcc或两个0xcd的中文代码页解释
do_fork 2010-04-28
  • 打赏
  • 举报
回复
中文字符跟ascii一毛钱关系都没有
白云飘飘飘 2010-04-28
  • 打赏
  • 举报
回复
自言自语

24,855

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧