我有一个包含以下字符串的资源文件,请注意特殊字符:
Questa funzionalità non è sostenuta: {0} {1}
在Maven完成其进程资源(我需要其他东西)后,我得到了:
Questa funzionalit� non � sostenuta: {0} {1}
请告诉我有一个简单的解决方法吗?
答案 0 :(得分:7)
包含字符串的文本文件是Java属性文件。默认情况下,Eclipse项目中的大多数文件都从容器(Eclipse)继承默认编码方案 - 在我的情况下是UTF-8。如果您只是手动将文本文件添加到项目中,则不会将其设置为UTF-8 !!
所以我的属性文件实际编码为ISO-8859-1。我通过单击文件右键并选择属性来更改Eclipse中的默认编码。然后我被迫重新输入所有特殊字符。
修复的另一部分是告诉Maven进程资源插件在处理资源时使用UTF-8编码。有关的说明如下:
http://maven.apache.org/plugins/maven-resources-plugin/examples/encoding.html
当然我必须实现UTF-8 ResourceBundle.Control,因为(为了向后兼容),详细信息ResourceBundle仍然是ISO-8859-1。有关该课程的详细信息,请访问:
http://www.mail-archive.com/stripes-users@lists.sourceforge.net/msg03972.html
希望有一天能帮到某人。