首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

中文化和国际化有关问题权威解析之三:Java中文有关问题分析 ,工作遇到的有关问题总结

2012-12-22 
中文化和国际化问题权威解析之三:Java中文问题分析 ,工作遇到的问题总结转自http://blog.csdn.net/alex197

中文化和国际化问题权威解析之三:Java中文问题分析 ,工作遇到的问题总结

转自http://blog.csdn.net/alex197963/article/details/4436035

?

本章从实际的中文问题中,分析问题的根本原因,以及解决之道。

?

中文化和国际化有关问题权威解析之三:Java中文有关问题分析 ,工作遇到的有关问题总结

虽然输出编码是对的,但在此之前,由于错误的输入编码,每个中文字变成了两个不相干的欧洲字符。而这些欧洲字符的编码和GBK编码是相冲突的(但也不一定完全冲突,例如上例中的第三个字节?

中文化和国际化有关问题权威解析之三:Java中文有关问题分析 ,工作遇到的有关问题总结

这很可能是因为没有设置?

中文化和国际化有关问题权威解析之三:Java中文有关问题分析 ,工作遇到的有关问题总结

明眼人一看就发现,实际上在这种情况下,最后输出到浏览器上的字节流是正确的!只是因为content type被设成了错误的ISO-8859-1编码,所以才导致浏览器显示不正确的。事实上,用户可以手工改变浏览器的设置,使浏览器使用GBK对字节流重新解码。

看起来象是数学中的“负负得正”。为什么会这样呢?这是因为ISO-8859-1编码的特殊性导致的。ISO-8859-1字符集的编码范围是之类的标记,如果有,则以GBK显示页面。此时页面显示是完全正常的(没有乱码)。

  • Content Type

    浏览器环境

    服务器环境

    从模板取得的中文字

    XML取得的中文字

    从用户表单取得的中文字

    深入分析

    以上只是分析了最常见的“乱码”现象。实际上,还可能会发生更复杂一点的情形。但是无论什么情形,都可以通过仔细分析中文字符经过的每一个输入转换输出环节,来了解它的原因。

  • 热点排行