-5

以下を含むテキストファイルがあります

{"sno":"1c8d1d7eaa32ff3f58a8822111276d5a","at":"app","tt":{"AppParam1":"AppParamValue1","AppParam2":"AppParamValue2"}},"c":{"dt":"Microsoft XDeviceEmulator","pn":"WP","pv":"8.0.9832.0"}

Javaでは、「sno」、「pn」、および「pv」を見つけて、現在上記のテキストファイルにある(つまり)の値を置き換えたい

"sno" has value "1c8d1d7eaa32ff3f58a8822111276d5a"
"pn" has value "WP"
"pv" has value "8.0.9832.0"

新しい価値

"sno" has to be changed to "637829"
"pn"  has to be changed to "XYZ"
"pv" has to be changed to "2.2.4.0"

あなたの助けに感謝します! ありがとう

4

2 に答える 2

1

それが JSON オブジェクトです。

その文字列を JSON オブジェクトに変換し、値を変更してから、再度文字列に変換します。

ここでは、Java の JSON オブジェクトについて読むことができます: http://www.json.org/java/

そして、ここでそれらの操作方法に関する簡単なチュートリアル: http://answers.oreilly.com/topic/257-how-to-parse-json-in-java/

于 2012-09-19T12:44:31.410 に答える
0

それを JSON に変換し、変更を加えてから、文字列に戻すことができます。または、これらの値を自分で置き換えたい場合は、次の行を使用できます。

yourstring = yourstring.replaceFirst("\"sno\":\"[^\"]+\"", "\"sno\":\"637829\"");
yourstring = yourstring.replaceFirst("\"pn\":\"[^\"]+\"", "\"pn\":\"XYZ\"");
yourstring = yourstring.replaceFirst("\"pv\":\"[^\"]+\"", "\"pv\":\"2.2.4.0\"");

これらのキーが文字列の他の場所に見つからない場合のみ

于 2012-09-19T12:46:10.193 に答える