各个国家和地区所制定的不同 ANSI 编码标准中,都只规定了各自语言所需的“字符”。比如:汉字标准(GB2312)中没有规定韩国语字符怎样存储。这些 ANSI 编码标准所规定的内容包含两层含义:
1. 使用哪些字符。也就是说哪些汉字,字母和符号会被收入标准中。所包含“字符”的集合就叫做“字符集”。
2. 规定每个“字符”分别用一个字节还是多个字节存储,用哪些字节来存储,这个规定就叫做“编码”。
各个国家和地区在制定编码标准的时候,“字符的集合”和“编码”一般都是同时制定的。因此,平常我们所说的“字符集”,比如:GB2312, GBK, JIS 等,除了有“字符的集合”这层含义外,同时也包含了“编码”的含义。
“UNICODE 字符集”包含了各种语言中使用到的所有“字符”。用来给 UNICODE 字符集编码的标准有很多种,比如:UTF-8, UTF-7, UTF-16, UnicodeLittle, UnicodeBig 等。
1、ISO-8859-1:
最简单的编码规则,每一个字节直接作为一个 UNICODE 字符。比如,[0xD6, 0xD0] 这两个字节,通过 iso-8859-1 转化为字符串时,将直接得到 [0x00D6, 0x00D0] 两个 UNICODE 字符,即 "ÖÐ"。
反之,将 UNICODE 字符串通过 iso-8859-1 转化为字节串时,只能正常转化 0~255 范围的字符。
2、GB2312,BIG5,Shift_JIS,ISO-8859-2:
把 UNICODE 字符串通过 ANSI 编码转化为“字节串”时,根据各自编码的规定,一个 UNICODE 字符可能转化成一个字节或多个字节。
反之,将字节串转化成字符串时,也可能多个字节转化成一个字符。比如,[0xD6, 0xD0] 这两个字节,通过 GB2312 转化为字符串时,将得到 [0x4E2D] 一个字符,即 '中' 字。
“ANSI 编码”的特点:
1. 这些“ANSI 编码标准”都只能处理各自语言范围之内的 UNICODE 字符。
2. “UNICODE 字符”与“转换出来的字节”之间的关系是人为规定的。
3、UTF-8,UTF-16,UnicodeBig:
与“ANSI 编码”类似的,把字符串通过 UNICODE 编码转化成“字节串”时,一个 UNICODE 字符可能转化成一个字节或多个字节。
与“ANSI 编码”不同的是:
1. 这些“UNICODE 编码”能够处理所有的 UNICODE 字符。
2. “UNICODE 字符”与“转换出来的字节”之间是可以通过计算得到的。
总结:
1. GB2312是GBK的子集,GBK是GB18030的子集,GBK是包括中日韩字符的大字符集合。如果是中文的网站,推荐GB2312,GBK有时还是有点问题。不过如果是纯英文的话,用什么都可以,用GB2312也没问题。
2. 为了避免所有乱码问题,应该采用UTF-8,将来要支持国际化也非常方便,UTF-8可以看作是大字符集,它包含了大部分文字的编码。使用UTF-8的一个好处是其他地区的用户(如香港台湾)无需安装简体中文支持就能正常观看你的文字而不会出现乱码。
3. ISO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符。而gb2312是标准中文字符集。UTF-8 是 UNICODE 的一种变长字符编码,即 RFC 3629。简单的说——大字符集。可以解决多种语言文本显示问题,从而实现应用国际化和本地化。对系统来讲,UTF-8 编码可以通过屏蔽位和移位操作快速读写,排序更加容易。UTF-8 是字节顺序无关的,它的字节顺序在所有系统中都是一样的。因此 UTF-8 具有更高的性能。
分享到:
相关推荐
批量 convertz.rar GBK 转 UTF-8 gb2312 转 UTF-8 Iso-8959-1 转 UTF-8
UTF-8:Unicode Transformation Format-8bit,许多的公司联合决定制定一个包含全世界所有文字的巨大字集,其中也有亚洲的公司参与。
GBK、UTF-8批量文件3秒快速转码工具(支持GBK,UTF-8免费转换),UTF-8/GBK编码在线转换工具,压缩包可以有多目录与文件,如目录中有图片不会转码,但是会随转码好的文件一起打包下载。 使用帮助 . 上传压缩包(仅支持zip...
上传excel表,将excel数据内容加载到页面table上,谷歌、火狐浏览器正常显示,IE11浏览器不显示加载的数据,报错:HTML1114 (HTTP 标头)的代码页 gb2312 覆盖(META 标记)的冲突的代码页 utf-8
"UTF-8" "UTF-16" "UTF-16BE" "UTF-16LE" "UTF-32" "UTF-32BE" "UTF-32LE" "Windows-1250" "Windows-1251" "Windows-1252" "Windows-1253" "Windows-1254" "Windows-1255" "Windows-1256" "Windows-1257" ...
很好用的网站编码转换,可以轻松的将gb2312的网站转成utf-8,或者其他的编码。
UTF-8 UTF-16BE UTF-16LE UTF-32BE UTF-32LE windows-1250 windows-1251 windows-1252 windows-1253 windows-1255 x-euc-tw X-ISO-10646-UCS-4-2143 X-ISO-10646-UCS-4-3412 x-mac-cyrillic ## ...
文件编码批量转换工具可以将GBK、UTF-8、US-ASCII、ISO-8859-1、GB2312、UTF-16、UTF-16BE、UTF-16LE等编码格式的文件互相转换成你需要的文件。
UTF-8 UTF-16BE / UTF-16LE UTF-32BE / UTF-32LE / X-ISO-10646-UCS-4-34121 / X-ISO-10646-UCS-4-21431 阿拉伯 ISO-8859-6 WINDOWS-1256 保加利亚语 ISO-8859-5 WINDOWS-1251 中国人 ISO-2022-CN 大5 EUC...
ASCII,UTF-8,UTF-16(2个变体),UTF-32(4个变体) Big5,GB2312,EUC-TW,HZ-GB-2312,ISO-2022-CN(繁体中文和简体中文) EUC-JP,SHIFT_JIS,CP932,ISO-2022-JP(日语) EUC-KR,ISO-2022-KR,Johab(韩文...
一个用C#编写的字符編碼轉化工具,很不错。 gb2312转utf-8 gb2312转big5 等多种编码转化
Chardet:通用字符编码检测器可检测ASCII,UTF-8,UTF-16(2个变体),UTF-32(4个变体)Big5,GB2312,EUC-TW,HZ-GB-2312,ISO-2022-CN(传统和简体中文Chardet:通用字符编码检测器可检测ASCII,UTF-8,UTF-16(2...
支持的字符编码: ASCII,UTF-8,UTF-16BE,UTF-16LE,UTF-32BE,UTF-32LE,EUC-JP,EUC-TW,EUC-KR,EUC-CN,Shift_JIS,Big5,GB18030,KOI8-R,CP1251, ISO-8859-1,ISO-8859-2,ISO-8859-3,ISO-8859-4,ISO-...
青年夏尔特 它是什么? juniversalchardet是“ universalchardet”的Java端口,它是Mozilla的编码检测器库。 可从以下获得Mozilla回购协议: ...UTF-8 UTF-16BE / UTF-16LE UTF-32BE / UTF-32LE / X-ISO-106
多种语言(big5gbkgb2312utf8Shift_JISiso8859-1)的网页编码切换解决方案归纳
字符集、GB2312、utf-8、iso-8859
Windows 1252和ISO 8859-1之间的区别 2.6.6. 为何"ANSI编码"(在Windows中)被称为"本地编码" 2.7. BOM 2.7.1. BOM是什么 2.7.2. 为何需要BOM 2.7.3. BOM表 2.8. 中文字符编码标准 2.8.1. GB2312,CP936,GBK,GB...
用C语言的方式进行特殊字符转义 / GB2312/UTF-8 或 ISO-8859-1/UTF-8 之间的互转.iconv库函数的调用
各种文字编码简介 包括ASCII GB2312 GBK GB18030 BIG5 ISO-8859-1 UTF-16 UTF-8等
* It only provides support for the following char sets/encodings: ISO8859-1, GB2312, BIG5, UNICODE UTF-8, and UNICODE UTF-16. samples-1.6.10.tar.gz 需要自已去sourceforge下载 本人将他传到CSDN做备份....