ansi编码
来源:互联网 发布:搜狗五笔 mac 编辑:程序博客网 时间:2024/06/05 04:38
ansi编码编辑
不同的国家和地区制定了不同的标准,由此产生了 GB2312、GBK、Big5、Shift_JIS 等各自的编码标准。这些使用 1 至 4 个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码。在简体中文Windows操作系统中,ANSI 编码代表 GBK 编码;在日文Windows操作系统中,ANSI 编码代表 Shift_JIS 编码。 不同 ANSI 编码之间互不兼容,当信息在国际间交流时,无法将属于两种语言的文字,存储在同一段 ANSI 编码的文本中。 当然对于ANSI编码而言,0x00~0x7F之间的字符,依旧是1个字节代表1个字符。这一点是ASNI编码与Unicode编码之间最大也最明显的区别。
目录
1简介编辑
ANSI(American National Standards Institute),中文:美国国家标准学会。
为使计算机支持更多语言,通常使用 0x80~0xFF 范围的多个字节来表示 1 个字符。比如:汉字 '中' 在简体中文Windows操作系统中,使用 [0xD6,0xD0] 这两个字节存储。对于ANSI编码而言,0x00~0x7F之间的字符,依旧是1个字节代表1个字符。这一点是ANSI编码与UTF-16编码之间最大也最明显的区别。比如“A君是第131号”,在ANSI编码中,占用12个字节,而在UTF-16编码中,占用16个字节。因为A和1、3、1这4个字符,在ANSI编码中只各占1个字节,而在UTF-16编码中,是需要各占2个字节的。
2关于GBK编码的BUG编辑
很多细心的人会发现,新建一个空的文本文件,用记事本打开(必须是Windows自带的记事本),只输入“联通”二字保存关闭,再重新打开时将是乱码。
当txt文档中一切字符都在 C0≤AA(第一个字节)≤DF 80≤BB(第二个字节)≤BF 这个范围时,notepad都无法确认文档的格式,自动依照UTF-8格式来解码。 而"联通"就是C1 AA CD A8,刚好在上面的范围内,所以不能正常显现。
记事本默认是以ANSI编码保存文本文档的,而正是这种编码存在的bug招致了上述怪现象。假如保存时选择Unicode、Unicode (Big Endian)、UTF-8编码,就正常了。此外,假如以ANSI编码保存含有某些特别符号的文本文档,再次打开后符号也会变成英文问号。
0 0
- ansi编码
- ansi编码
- ansi编码
- ANSI编码
- ANSI 编码
- ansi编码
- ansi编码
- 什么是ANSI,ANSI编码,ANSI C
- unicode,ansi编码转换
- ANSI&Unicode编码相关
- ANSI UNICODE 编码
- ANSI&Unicode编码相关
- ANSI转UTF8编码
- ANSI转UTF8编码 .
- ANSI编码对比表
- ANSI编码对比表
- ansi编码对比表
- 文本编码之ansi
- java断言的学习
- sublime 配置python
- 港中大教授研发DeepID人脸识别技术 准确率超99%
- Openstack各种部署工具介绍
- LeetCode--Rotate List
- ansi编码
- iOS-Core-Animation-Advanced-Techniques(三)
- mybatis与spring整合(基于配置文件)
- Improving Layout Performance
- 【Leetcode】Generate Parent
- 选择类聚——解决商家微信营销之急
- Python3 如何优雅地使用正则表达式(详解一)
- html 锚点的使用
- VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)