同じキーに基づいて複数のJSONを1に結合する方法に問題があります。キーは1番目のインデックスです。Javaで3つ以上のJSONをマージする方法
例:
String data_a = "{\"results\":[[\"1\",\"6000\"],[\"2\",\"5000\"]]\"}";
String data_b = "{\"results\":[[\"1\",\"2000\"],[\"3\",\"5000\"]]\"}";
String data_c = "{\"results\":[[\"1\",\"3000\"],[\"3\",\"6000\"],
[\"4\",\"1000\"]]\"}";
以下のように1からC、文字列、Bを組み合わせる:
{
"results ": [
["1", "6000", "2000", "3000"],
["2", "5000", "", ""],
["3", "", "5000", "6000"],
["4", "", "", "1000"]
]
}
をここで、私はマップに変換するgsonを使用してみてください。しかし、ルーピングとキーのマッチング方法を混乱させます。
Map firstObject = new Gson().fromJson(data_a, HashMap.class);
Map secondObject = new Gson().fromJson(data_b, HashMap.class);
Map thirdObject = new Gson().fromJson(data_c, HashMap.class);
文字列は中括弧で囲まない限り、有効なJSONではありません。 – shmosel
ありがとう、更新されます – shin88
これは正しくないように見えます - > ["1"、 "6000"、 "2000"、 "3000"] ......あなたは{"1":["6000" 、 "2000"、 "3000"]、......}、 –