2011-07-14 21 views
4

手動で処理することなく、Javaファイルからさまざまなプロパティグループを読み取ることはできますか?ファイルからJavaプロパティグループを読み取る

"マニュアル"とは、ファイルを1行ずつ読み込み、プロパティグループの開始位置を検出し、対応するキーと値のペアを抽出することです。実際には、これはProperties.load()メソッドが構成するホイールの再構築(ほとんど)を意味します。

私が探しているのは、1つのファイルから複数のグループのプロパティを読み込み、それぞれのグループが識別可能なので、独自のJava Propertiesオブジェクトに読み込むことができます。

+0

INIファイルのような意味ですか?これを行う一般的な方法は、プロパティーの接頭辞を使用することです。group1.prop1 = ... group1.prop2 = ... group2.prop1 = ... log4jプロパティーを参照してください。 –

+0

これは、XMLのような適切なマークアップ言語のようなものに見えます。 –

答えて

7

私はjava.util.Propertiesを使用します。接頭辞を使用できます。このような

group1.key1=valgroup1key1 
group2.key1=valgroup2key1 
group2.key2=valgroup2key2 

とそれらを読む:

class PrefixedProperty extends Properties { 
    public String getProperty(String group, String key) { 
     return getProperty(group + '.' + key); 
    } 
} 

と使用:.propertiesファイルで

/* loading, initialization like for java.util.Properties */ 
String val = prefixedProperty.getProperty("group1", "key1"); 

また、Windowsのiniファイルでini4jを使用することができます。

別の方法として、独自のカスタム構造化ファイル(XMLなど)を使用する方法があります。

関連する問題