7

我想将我的属性文件放在某个文件夹中,但我无法读取它们,因为我们只能在ResourceBundle对象的静态getBundle()方法中指定包名称。

假设捆绑包是:myFile.properties
当前路径是:src
我想将我的属性文件保存在:src/temp

所以当我使用时:

ResourceBundle.getBundle("temp/myfile", currentLocale);

它抛出异常“找不到捆绑包”。我想要某种方式来指定路径。请建议我一些方法来做到这一点。

谢谢

4

2 回答 2

11

用这个:

ResourceBundle.getBundle("temp.myfile", currentLocale);

调用中baseName提供的ResourceBundle.getBundle应该是完全限定的类名。所以它必须用点分隔写。另请注意,这会temp在您的 java 代码中创建一个包(我认为这不是一个好主意)。最好将属性文件放在适当的包中,例如com.xyz.abc. 然后你可以使用它访问它

ResourceBundle.getBundle("com.xyz.abc.myfile", currentLocale);
于 2010-08-30T06:23:24.590 回答
3

您可能使用了错误的文件名 (myfile != myFile)。

对于类路径myFile.properties目录temp中的文件,此代码应该可以工作:

ResourceBundle.getBundle("temp.myFile");
于 2010-08-30T07:27:48.163 回答