-
Ansi,UTF8,Unicode编码
添加时间:2013-6-4 点击量:比来在写收集数据传输的法度,被各类编码搞的乌烟瘴气,在这里简单记录如下:
1. ASCII和Ansi编码
字符内码(charcter code)指的是用来代表字符的内码.读者在输入和存储文档时都要应用内码,内码分为
a.单字节内码 -- Single-Byte character sets (SBCS),可以支撑256个字符编码.
b.双字节内码 -- Double-Byte character sets (DBCS),可以支撑65000个字符编码.
前者即为ASCII编码,后者对应ANSI。在简体中文的操纵体系中ANSI就指的是GB2312,代码页936(ANSI下不合说话有不合的代码页)。2.GB2312和GBK编码
GB2312是对 ANSI 的简体中文扩大。GB2312共收录了七千个字符,因为GB2312支撑的汉字太少并且不支撑繁体中文,所以GBK对GB2312进行了扩大,以支撑繁体中文和更多的字符,GBK共支撑可能22000个字符,GB18030是在GBK的根蒂根基上又增长了藏文、蒙文、维吾尔文等首要的少数民族文字。
代码页(codepage) 就是各国的文字编码和Unicode之间的映射表。例如GBK和Unicode的映射表就是CP936,所以也常用cp936 来指代GBK。3.Unicode
ANSI有很多代码页,应用不合代码页的内码无法在其他代码页平台上正常显示。因为各国之间的编码不合造成的交换传输不便,ISO 筹算取销所有的地区性编码规划,从头建树一个全球性的编码规划把所有字母和符号都同一编码进去,称之为 "Universal Multiple-Octet Coded Character Set",简称为 UCS(ISO10646)。同时又有unicode.org这个组织也制订了本身的全球性编码 unicode,自从unicode2.0开端,unicode采取了与USC雷同的字库和字码,阶段首要采取的是 UCS-2/unicode 16 位的编码。
4.UTF编码
UTF(Unicode/UCS Transfer Format),UCS 变长存储的编码体式格式,首要用来解决 UCS 编码的传输题目的。分为 UTF-7,UTF-8,UTF-16,UTF-32 等。UTF-8是一次传输8位(一个字节)的UTF编码体式格式,一个字符可能会经过1-6次传输,具体的跟 unicode/UCS 之间的转换关系如下:
unicode(U+)真正的心灵世界会告诉你根本看不见的东西,这东西需要你付出思想和灵魂的劳动去获取,然后它会照亮你的生命,永远照亮你的生命。——王安忆《小说家的十三堂课》