在Java中使用ResourceBundle类时,我们可以使用属性文件指定目录路径吗?

时间:2010-08-30 06:11:31

标签: java resourcebundle

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

假设bundle是: myFile.properties
当前路径为: src
我想保留我的属性文件: src / temp

所以当我使用时:

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

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

谢谢

2 个答案:

答案 0 :(得分:11)

使用此:

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

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

访问它
ResourceBundle.getBundle("com.xyz.abc.myfile", currentLocale);

答案 1 :(得分:3)

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

对于类路径上的目录myFile.properties中的文件temp,此代码应该有效:

ResourceBundle.getBundle("temp.myFile");