读书人

UTF-八、iso-8859-1、GBK以及

发布时间: 2013-11-08 17:52:32 作者: rapoo

UTF-8、iso-8859-1、GBK以及

?

iSO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符。而gb2312是标准中文字符集。UTF-8 是 UNICODE 的一种变长字符编码,即 RFC 3629。简单的说——大字符集。可以解决多种语言文本显示问题,从而实现应用国际化和本地化。 对系统来讲,UTF-8 编码可以通过屏蔽位和移位操作快速读写,排序更加容易。UTF-8 是字节顺序无关的,它的字节顺序在所有系统中都是一样的。因此 UTF-8 具有更高的性能。 不过如果是纯英文的话,用什么都可以,用GB2312也没问题。

?

在解决TOMCAT中文乱码问题时,总是牵扯到UTF-8、iso-8859-1、GBK之间的转换做小结如下:

1.UTF-8和GBK之间可以互相转换,并且UTF-8大于GBK,可以简单理解为GBK是UTF-8的子集。

2.UTF-8和iso-8859-1之间的转换:iso-8859-1可以转成UTF-8,但是UTF-8不能转换成iso-8859-1,原因很简单,你可以简单理解为强制类型转换,把一个高精度的类型转成低精度的,会造成数据丢失!其实,真实原因是UTF-8编码的中文字符在iso-8859-1编码表中没有匹配的位置。另外,iso-8859-1也可以写成ISO8859_1。

3.GBK和iso-8859-1之间的转换:道理同UTF-8和iso-8859-1之间转换一样,不再赘述!

4.凡是能用GBK解码方式的,同样也能用UTF-8解码方式。所以,保险起见,强烈推荐JSP,XML中统一使用UTF-8字符集。然后统一使用UTF-8解码,这样中英文都能正常显示,也符合国际化的思想。

读书人网 >编程

热点推荐