3

これは、何度も再発明されたにちがいないもののように感じられ、1 つではなく複数のライブラリが存在するはずです。

コンマで区切られた「キー=値」という形式の複数の「割り当て」を含むテキスト行を解析したいと思います。問題は、Java で文字列または数値を指定できるようにできるだけ近い値を指定できるようにする必要があることです。たとえば、文字列のエスケープ、Unicode 文字の指定、タブ文字の \t の指定などです。

これを行う方法があるオープンソースまたはLGPLライブラリを知っている人はいますか?

更新:コンマで区切られた複数のキー=値のペアを含む文字列を処理する必要があるため、これにプロパティを簡単に使用する方法を (まだ) 見ていないと思います。ここでの問題は、パーサーが値 (もちろんコンマを含むことができます) を適切に解析する方法を認識しない限り、文字列をコンマで分割する簡単な方法がないことです。基本的に私がやりたいことは、次のような文字列をvar1=1, var2="asdf",var3="x,y,z\n",var4="\""ハッシュマップに変換するか、値が文字列、ブーラン、または数値のいずれかである何かをラップすることです。

4

4 に答える 4

1

ライブラリは必要ありません。

    String[] strArray= "var1=1,var2=2,var3=test".split(",");
    Map<String, String> map = new HashMap<>();
    for (String pair : strArray) {
        String split[] = pair.split("=");
        map.put(split[0], split[1]);
    }

ライブラリを本当に使いたい場合は、グアバを試すことができます

Iterable<String> split = Splitter.on(',').omitEmptyStrings().split("var1=1,var2=2,var3=test");
于 2016-06-12T12:51:30.907 に答える
1

これにはJava Properties APIを使用できると思います

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

于 2013-03-15T20:13:37.150 に答える
0

java java.util.Properties を使用できませんか?

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

Properties props = new Properties();
props.load(new FileInputStream("myfile.properties"));
于 2013-03-15T20:17:06.250 に答える
0

プロパティファイルについて話しているのですか?次を使用して、次のようなことができますProperties

Properties properties = new Properties();
properties.load(new FileInputStream("/path/to/file.properties"));
于 2013-03-15T20:14:16.527 に答える