我正在尝试关于 RersourceBundles 的“学习 Java”示例。
我正在使用 Windows 7 和 NetBeans
示例代码为:
import java.util.*;
public class Hello {
public static void main(String[] args) {
ResourceBundle bun;
bun = ResourceBundle.getBundle("Message", Locale.ITALY);
System.out.println(bun.getString("HelloMessage"));
bun = ResourceBundle.getBundle("Message", Locale.US);
System.out.println(bun.getString("HelloMessage"));
}
}
如果我运行我得到的代码:
Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name Message, locale it_IT at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1499) at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1322) at java.util.ResourceBundle.getBundle(ResourceBundle.java:795) at learningjava4.Hello.main(Hello.java:14) Java Result: 1
即使我写了然后保存
import java.util.*;
public class Message_it_IT extends ListResourceBundle {
public Object[][] getContents() {
return contents;
}
static final Object[][] contents = {
{"HelloMessage", "Buon giorno, world!"},
{"OtherMessage", "Ciao."},
};
}
我仍然有同样的错误。 Message_it_IT 文件保存在另一个文件的同一目录下,有什么问题吗?
谢谢
最佳答案
堆栈跟踪显示该类位于包 learningjava4
中。你告诉我们捆绑类/文件在同一个包中。所以包的基本名称是 learningjava4.Message
,而不是 Message
。
关于java - ResourceBundle 示例不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24630658/