如何让 Eclipse 读取 UTF-8 中的捆绑属性?

Posted

技术标签:

【中文标题】如何让 Eclipse 读取 UTF-8 中的捆绑属性?【英文标题】:How to make eclipse read bundle properties in UTF-8? 【发布时间】:2016-08-21 11:07:33 【问题描述】:

外部化 Eclipse RCP 包的字符串,例如从扩展点,产生bundle.propertiesplugin.properties。将这些属性翻译成俄语会得到bundle_ru.properties

有没有办法让我的 Eclipse RCP 应用程序将这些资源读取为 UTF-8 而不是 ISO-8859-1

【问题讨论】:

你不能只改变文件属性下的编码吗?此外,您可以在加载包时指定语言环境。 @AlexK。 Eclipse 用来读取本地化属性文件的类不知道 Eclipse 文件编码属性设置,所以很遗憾这不起作用。 【参考方案1】:

我从未为 Eclipse RCP 尝试过它,但对于必须翻译的其他 Java 属性,我通过 native2ascii 转换器运行俄语翻译,以生成带有转义西里尔字符的 ASCII 属性文件。不过,我喜欢保留 UTF-8 属性文件的副本,因为如果某些用户报告不正确的翻译,它可以更容易地实施更正。

【讨论】:

感谢您的输入,问题出在 Eclipse 方面。如果 eclipse 以 ISO-8859-1 读取属性,则将属性转换为 UTF-8 无济于事。这会导致问题。 好吧,您必须在 Eclipse 中保留 ISO-8859-1 文件,但您可以将它们转换为 UTF-8,将它们翻译为 UTF-8,然后使用我上面提到的转换器,并将转换后的属性文件放回 Eclipse。仍然存在两个问题:Eclipse 能否正确显示 \uXXXX 字符(我会假设如此),是否值得付出努力?【参考方案2】:

不支持。读取捆绑属性文件的代码最终使用 PropertyResourceBundle 类,该类始终假定 ISO-8859-1

【讨论】:

好吧,太糟糕了...我希望为所有属性切换到 UTF-8,(***.com/questions/36769205/…)...但只能处理一些属性,我将留下所有内容照原样。

以上是关于如何让 Eclipse 读取 UTF-8 中的捆绑属性?的主要内容,如果未能解决你的问题,请参考以下文章

如何为 Eclipse 中的 Java 源文件设置为 UTF-8 默认编码

Windows系统下Eclipse下默认的编码格式是啥?GBK?已有的工程文件转换为UTF-8之后为何不能正确读取?

如何将 Ivy 的依赖项添加到 Eclipse PDE 目标平台?

如何在 Eclipse 中支持 UTF-8 编码

2017/12/30 GUI和动态代理

让 Maven2 将资源复制到构建目录,但不将它们捆绑在 JAR 中