使用Eclipse外部化字符串 - 如何获得语言xyz的字符串



在我们的eclipse rcp应用程序中,所有字符串都是外部化的,并以两种语言显示,这很好。例如。我收到了这样的消息。

public class Messages extends NLS
{
  private static final String BUNDLE_NAME =
          "abc.fixedcolumns.messages"; //$NON-NLS-1$
  public static String additionalReq;
  static
  {
    // initialize resource bundle
    NLS.initializeMessages( BUNDLE_NAME, Messages.class );
  }


  private Messages()
  {
    super();
  }

使用匹配的消息_de.properties和messages_en.properties。

它可以正常工作,以英语启动申请显示了英文字符串,德语显示了德语。

现在,我需要在德语版本中获得一些英语字符串。如何实现?

(一种尝试是更改JVM的语言环境,获取字符串并将其更改,但这将是一个非常糟糕的解决方案)

您不必将所有消息都放在特定于语言的属性文件中。NLS还将查看messages.properties文件。您可以将仅英文邮件放在那里,而不会在语言特定的属性中放任何东西。

除非NLS不支持除当前语言环境以外的任何事物。您可以制作自己的班级版本来完成您想做的事情,NLS不是很大。

eclipse e4 rcps确实支持更灵活的翻译系统。

最新更新