字符必须编码后才能被计算机处理. 计算机使用的缺省编码方式就是计算机的内码. 早期的计算机使用 7 位的 ASCII 编码, 为了处理汉字, 程序员设计了用于简体中文的 GB2312 和用于繁体中文的 big5.
UTF-8:
Unicode TransformationFormat-8bit, 允许含 BOM, 但通常不含 BOM. 是用以解决国际上字符的一种多字节编码, 它对英文使用 8 位 (即一个字节), 中文使用 24 为(三个字节) 来编码.
UTF-8 包含全世界所有国家需要用到的字符, 是国际编码, 通用性强. UTF-8 编码的文字可以在各国支持 UTF8 字符集的浏览器上显示. 如果是 UTF8 编码, 则在外国人的英文 IE 上也能显示中文, 他们无需下载 IE 的中文语言支持包.
GBK:
是国家标准 GB2312 基础上扩容后兼容 GB2312 的标准. GBK 的文字编码是用双字节来表示的, 即不论中, 英文字符均使用双字节来表示, 为了区分中文, 将其最高位都设定成 1.GBK 包含全部中文字符, 是国家编码, 通用性比 UTF8 差, 不过 UTF8 占用的数据库比 GBK 大.
GBK,GB2312 等与 UTF8 之间都必须通过 Unicode 编码才能相互转换:
- GBK,GB2312--Unicode--UTF8
- UTF8--Unicode--GBK,GB2312
简单从功能上说:
1,GBK 通常指 GB2312 编码, 只支持简体中文字
2,utf 通常指 UTF-8, 支持简体中文字, 繁体中文字, 英文, 日文, 韩文等语言(支持文字更广)
3, 通常国内使用 utf-8 和 gb2312, 看自己需求选择
先来看看 GB2312 和 GBK 这两种中文编码规范.
GB 指代的 "国标", 即 "国家标准".
GB2312 包含了常用的中文字符, 同时也兼容 ASCII 码. 在这种编码规范中, ASCII 码占一个字节, 码值在 0~127 之间; 中文字符占两个字节, 码值在 127~256 之间.
GBK 兼容 GB2312 编码, 但比 GB2312 包含了更多的汉字: 中文存储时, 第一个字节码值在 127~256 之间, 第二个字节码值在 0~256 之间.
再来看看 UTF8 编码.
UFT8 是一种国际化的编码方式, 包含了世界上大部分的语种文字, 也兼容 ASCII 码.
这类标准依据文字的不同, 使用 1~6 个字节来存储字符, 是一种多字节的编码规范. 它对英文使用一个字节 (8 位) 存储, 对中文使用三个字节 (24 位) 存储.
来源: http://www.css88.com/qa/html5/11800.html