さまざまなパッケージから複数のプロパティ ファイルを ResourceBundle として読み込みたい。Javaでそれを達成できますか
9976 次
4 に答える
3
を延長java.util.PropertyResourceBundle
して呼び出しますsetParent
。
于 2010-04-13T14:36:22.590 に答える
0
ResourceBundle.Control() は、ResourceBundle のファイルのリストを制御します。getCandidateLocales と toBundleName を上書きできます。toBundleName は、ロケールを「ファイル名」および getCandidateLocales で制御できるロケールのリストに変換します。たとえば、
final String[] variants = new String[]{"your names"};
ResourceBundle.getBundle(baseName, locale,
new ResourceBundle.Control() {
public List<Locale> getCandidateLocales(String baseName, Locale locale) {
List<Locale> out = new ArrayList<Locale>();
String language = locale.getLanguage();
String country = locale.getCountry();
for (String variant : variants) {
out.add(new Locale(language, country, variant));
}
out.addAll(super.getCandidateLocales(baseName, locale));
return out;
}
public String toBundleName(String baseName, Locale locale) {
Locale l = new Locale(locale.getLanguage(), locale.getCountry());
return locale.getVariant() + "." + super.toBundleName(baseName, l);
}
});
Java 1.6 でのみ動作します
于 2010-12-01T14:03:16.523 に答える
0
このクラスを見てください。それは私にとって完璧に機能します!クラスの Javadoc は、それを使用する方法を説明します。
MultiplePropertiesResourceBundle (+ 子会社のResourceBundleEnumeration )
ここでは、役立つ単体テスト(コード ドキュメント)を見つけることができます。
于 2016-05-09T04:55:36.423 に答える