在很多使用Resource资源文件的情况下,如Struts,spring等框架中,通过ResourceBundle的方式从资源文件(如messages.properties)中自动读取并进行资源绑定。这时,如何解决中文乱码问题呢?
其实,很简单,只要通过将中文写成Unicode就可以了!比如,
hello=你好
用unicode来写就是
hello=/u4f60/u597d
在JDK/BIN目录中,提供了一个简单的转换工具:native2ascii.exe,可以把非Latin1和非Unicode的本地编码文件转换成Unicode编码的文件。其具体说明可以查阅JDK文档。这里给出简单的使用方法示例:
native2ascii messages.properties messages.txt
然后用messages.txt文件的内容替换messages.properties文件就可以了。
现在,中文资源文件可以正常使用了!