关于各种编码的简要理解

来源:互联网 发布:台州淘宝美工招聘网 编辑:程序博客网 时间:2024/06/05 17:48
GB2312:两个大于127的字符连在一起时,就表示一个汉字。还重新编码了ACSII,于是被重新编码的两个字节ACSII就是常说的“全角”字符,而原来127以下的那些就叫做“半角”字符。


GBK:只要第一个字节大于127,就固定表示这是一个汉字的开始,GBK包括了GB2312的所有内容,同时又增加了近两万个新汉字(包括繁体)和符号。


GB18030:增加了几千个少数名族的字


这一系列汉字编码标准统称为DBCS(Double Byte Character Set双字节字符集)


ANSI编码:就是不同的国家和地区制定了不同的标准的总汇。对于英文文件是ASCII编码。在简体中文Windows操作系统中,ANSI 编码代表 GBK 编码;在繁体中文Windows操作系统中,ANSI编码代表Big5;在日文Windows操作系统中,ANSI 编码代表 Shift_JIS 编码。


Unicode:废了所有的地区性编码方案,重新编码了所有字符集,并取名"Universal Multiple-Octet Coded Character Set",简称 UCS, 俗称 "UNICODE"。 Unicode严格来说只是字符集,它为每个字符定义一个数字序号,没有编码方式。


UTF-8:utf-8其实就是Unicode字符集的编码方式,它规定了Unicode字符如何在计算机中存储和传输等等。


GBK与Unicode:Unicode重新编码并没有考虑到各个国家字符编码的兼容问题,即就GBK编码而言,Unicode并没有参照GBK的字符映射关系。因此,GBK与Unicode对汉字字符的编码是完全不同的,更别提GBK与utf8的转换。所以我猜想GBK与Unicode的转换只能根据查找出来汉字的对比相同与否来判断了。


Unicode和utf8大行其道,为什么GBK还不被废弃?

原因:GBK的中文字符占两个字节,utf8编码下的中文字符占三个字节,相比之下,GBK占用内存更小,更节省空间

0 0
原创粉丝点击