IntelliJ和国际化:重音字符

时间:2010-05-14 07:15:46

标签: java internationalization intellij-idea

我有一个java应用程序,它使用标准的Java国际化服务,具有英语和法语的GUI。我在JBuilder 2005上用一台旧机器编写了它,最近升级了,这意味着改变了IDE。我终于选择了IntelliJ。

但是,它似乎无法处理包含法语的ListResourceBundle后代中的重音字符。当我第一次创建IntelliJ项目并添加我的源代码(我手动完成,确保幕后没有任何奇怪的事情发生)时,我注意到所有重音字符都被改成了成对的字符,例如√©。我仔细检查了代码并纠正了所有这些问题,并认为问题已得到解决。

但我发现在运行(重建)项目时,仍然会显示字符对,而不是我在代码中看到的重音字符!

在IntelliJ中做过国际化的人可以告诉我需要做些什么来解决这个问题吗?

PS:我在Mac上。

2 个答案:

答案 0 :(得分:1)

两件事 -

首先,确保您的文件存储为UTF,并且源控件支持编码。

其次,请考虑使用IntelliJ http://www.jetbrains.com/idea/features/i18n_support.html

中内置的资源包编辑支持

答案 1 :(得分:0)

Java资源包应该只包含ascii和Unicode转义码 见[http://java.sun.com/developer/technicalArticles/Intl/ResourceBundles/]

e.g。 \ u00d6ffnen为德国Öffnen。

命令行工具native2ascii从您的本机格式转换为ascii plus unicode转义码。这有点麻烦但不是Intellij而是Java问题。

注意:我在Mac上使用Intellij创建本地化为英语,德语和日语的程序。