刚写了一个struts,以前写程序不太关注国际化问题,今天就翻了翻资料,终于了解了一些
以下为小弟的理解,只是从页面编码的环节说起,并未涉及到提取数据库数据、页面传值不足之处请指正!
如果要支持国际化,那么页面的编码必须为UTF-8,因为客户端的浏览器都支持UTF-8编码。
下面做个简单的测试:
建立一个html文件,内容很简单,如下
New Document这是一个中文字符串
这是一个中文字符串
以上代码保存后,在IE中打开,你可以看到
这是一个中文字符串
Β???
第二行显示的可能不同机器显示不一样,但是应该都是乱码。
下面进行第二步,返回刚才的页面,修改浏览器的编码方式,可以看得到
无论怎么改变编码方式,第一行永远现实的是“这是一个中文字符串”,只有在编码方式为简体中文的时候,第二行才不显示乱码。
所以,如果要你的web站点支持国际化,那么除了编码方式要为UTF-8,而且页面中的中文部分(包括中文的标点符号)都要经过UNICODE编码。
UTF-8编码工具:
方法一: 请参考文章利用Eclipse编辑中文资源文件,文章中介绍了JDK的native2ascii工具
方法二: UTF-8 转换工具,这是一个JS脚本,保存后可以对输入的字符串进行转换,代码如下
UTF8 转换工具UTF-8 转换工具 使用方法: 在下面的文本框中输入中文文字,按“转化”,即可将其转化为UTF-8字符。 再按“还原”,即可将其还原为简体中文。 |