11

有没有人有过使用 GNU gettext 开发大型 Java 应用程序以实现国际化的经验?我发现我真的很喜欢在我的源代码中包含英文文本,但我想确保我所做的对于我参与的相对较大的软件项目来说是实用的。

如果您有这方面的经验,您使用什么来查找 Java 中的资源?我目前正在尝试 Gettext Commons ( http://code.google.com/p/gettext-commons/ ),到目前为止它似乎运行良好。

将原始文本保留在源代码中的 gettext 的任何替代方法?Windows 上支持的类似工具会很棒。

4

2 回答 2

8

JSOM开源 OpenStreetMap Java 编辑器项目正在使用 Gettext 库来处理其所有翻译,并且效果非常好,因为人们能够使用各种翻译工具(如 KBabel、poedit、launchpad...)来使用po 文件,因此那里没有平台限制。此外,我不太明白为什么您认为上述设置不能在任何平台上使用 - 您当然可以在 Windows 中使用 gettext 参见:herehere

鉴于 gettext 的流行程度,我当然会推荐它。

于 2009-06-29T19:32:28.223 回答
4

您可以改用普通的旧 Java 消息资源包

编辑:嗯,我们在开发团队中真正使用的是标准TMX 格式,它允许您在 XML 文件中指定本地化字符串。它是翻译工具常用的格式。这是一个免费的,可让您更轻松地编辑这些文件。

尽管如此,我之前没有提到它,因为它没有提供比消息资源包任何真正的优势或功能,除了通过 XML 处理工具更好的编码处理(在处理不同语言的国际化文字时,编码可能是一个真正的痛苦到英语)。

此外,我们真正使用的是我们的软件是我们自己的框架,它解析这种 XML 格式并让我们在语言之间进行切换(在 HTML 页面或 Swing 框架中),而无需重新启动我们的应用程序。开发一个以这种方式处理字面翻译的简单库并不难,但缺点是您必须实现它。

于 2009-02-23T21:41:50.510 回答