如何在运行时确定所有可用的ResourceBundle?

时间:2011-12-15 12:12:23

标签: java resourcebundle

我的Java应用已本地化为多个区域设置。对于每个语言环境,都有一个包含翻译的属性文件。我按如下方式加载它:

ResourceBundle bundle = ResourceBundle.getBundle("MessagesBundle", Locale.getDefault());

我想在运行时确定所有可用的资源包。捆绑包在我的应用程序的jar文件中。

我该怎么做?

3 个答案:

答案 0 :(得分:1)

为什么不尝试在类路径中查找以“MessageBundle”开头并以“.properties”结尾的所有属性文件。它很脏,但它会起作用。

以下是有用的代码 - Code to find files on your classpath

答案 1 :(得分:1)

ResourceBundle类没有标准方法。您可以使用(hackish solution) - Thread.currentThread().getContextClassLoader().getResource()方法或this.getClass()。getResource(“/”)。看看另一个有same title的SO线程。

答案 2 :(得分:0)

如果您使用Spring,可以尝试使用PathMatchingResourcePatternResolver:

L <- list(df1, df2)
lapply(L, function(x) transform(x, value=as.matrix(x[1:3]) %*% c( 0.12, 0.24, 0.56)))