编码对比:
对中文字符后面四种编码格式都能处理,GB2312 与 GBK 编码规则类似,
但是 GBK 范围更大,它能处理所有汉字字符,所以 GB2312 与 GBK 比较应该选择
GBK。UTF-16 与 UTF-8 都是处理 Unicode 编码,它们的编码规则不太相同,
相对来说 UTF-16 编码效率最高,字符到字节相互转换更简单,进行字符串操作也
更好。它适合在本地磁盘和内存之间使用,可以进行字符和字节之间快速切换,
如 Java 的内存编码就是采用 UTF-16 编码。但是它不适合在网络之间传输,因为
网络传输容易损坏字节流,一旦字节流损坏将很难恢复,想比较而言 UTF-8 更适合
网络传输,对 ASCII 字符采用单字节存储,另外单个字符损坏也不会影响后面其它
字符,在编码效率上介于 GBK 和 UTF-16 之间,所以 UTF-8 在编码效率上和编码
安全性上做了平衡,是理想的中文编码方式。
详细参考:http://www.ibm.com/developerworks/cn/java/j-lo-chinesecoding/
对中文字符后面四种编码格式都能处理,GB2312 与 GBK 编码规则类似,
但是 GBK 范围更大,它能处理所有汉字字符,所以 GB2312 与 GBK 比较应该选择
GBK。UTF-16 与 UTF-8 都是处理 Unicode 编码,它们的编码规则不太相同,
相对来说 UTF-16 编码效率最高,字符到字节相互转换更简单,进行字符串操作也
更好。它适合在本地磁盘和内存之间使用,可以进行字符和字节之间快速切换,
如 Java 的内存编码就是采用 UTF-16 编码。但是它不适合在网络之间传输,因为
网络传输容易损坏字节流,一旦字节流损坏将很难恢复,想比较而言 UTF-8 更适合
网络传输,对 ASCII 字符采用单字节存储,另外单个字符损坏也不会影响后面其它
字符,在编码效率上介于 GBK 和 UTF-16 之间,所以 UTF-8 在编码效率上和编码
安全性上做了平衡,是理想的中文编码方式。
详细参考:http://www.ibm.com/developerworks/cn/java/j-lo-chinesecoding/