6

さまざまなパッケージから複数のプロパティ ファイルを ResourceBundle として読み込みたい。Javaでそれを達成できますか

4

4 に答える 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 に答える