eclipse中NLS.initializeMessages()的用法
时间: 2024-05-09 15:20:16 浏览: 61
NLS.initializeMessages()是Eclipse中用于国际化的工具类,用于加载指定的资源文件并将其转换为Java中的字符串。
使用NLS.initializeMessages()时,需要先定义一个继承自NLS类的子类,该子类的作用是存储需要国际化的字符串常量,例如:
```java
import org.eclipse.osgi.util.NLS;
public class Messages extends NLS {
public static String hello;
public static String goodbye;
static {
NLS.initializeMessages("messages", Messages.class);
}
}
```
在上面的代码中,定义了一个Messages类,该类继承自NLS类,并定义了两个字符串常量:hello和goodbye。在静态代码块中,调用了NLS.initializeMessages()方法,其中第一个参数为资源文件的名称,第二个参数为Messages类的Class对象。
接下来,在资源文件中定义需要国际化的字符串,例如在messages.properties文件中:
```
hello=Hello
goodbye=Goodbye
```
在程序中,可以使用Messages类中定义的字符串常量,例如:
```java
System.out.println(Messages.hello);
System.out.println(Messages.goodbye);
```
调用NLS.initializeMessages()方法后,可以保证在当前Locale下,对应的字符串常量会被正确地加载并替换为资源文件中的值。如果当前Locale发生变化,可以通过调用NLS.refreshMessages()方法重新加载资源文件。
阅读全文