9

以下のようなプロパティ ファイル形式をサポートしたいと考えています (値を引用符で囲むことができます)。

key1=value1   
key2="value2"
key3='value'

私の質問は、Java Properties クラスの実装は、上記のように二重/一重引用符を処理しますか? つまり、引用符の自動削除です。

実際に試してみましたが、ここで確認したいだけです。したがって、引用符を自分で削除する必要があります。

編集:

私の単純なケースでは、以下のコードがありました。

String path = "/tmp/my.properties";
Properties p = new Properties();
p.load(new FileInputStream(new File(path)));

String v = p.getProperty("key2");
if((v.startsWith("\"") && v.endsWith("\"")) || 
   (v.startsWith("\'") && v.endsWith("\'"))) {
    v = v.substring(1, v.length()-1);
}

これを処理するためのベストプラクティスに関する推奨事項はありますか?

ありがとう

4

1 に答える 1

1

引用符を削除するには、独自の拡張子を持つプロパティファイルをロードします。この拡張子は。ResourceBundleをオーバーライドしますhandleGetObject

参照:

http://docs.oracle.com/javase/6/docs/api/java/util/Properties.html http://docs.oracle.com/javase/6/docs/api/java/util/ResourceBundle.html

于 2013-02-05T20:38:54.273 に答える