私はAndroidでこのコードを持っています:
Map<String, String> idObject1 = new LinkedHashMap<String, String>();
idObject1.put("Id", "Test1");
idObject1.put("FirstName", "Test Name");
idObject1.put("LastName", "Test Surname");
idObject1.put("PhoneNumber", "12345");
Gson gson = new Gson();
json.put("ParticipantIds", gson.toJson(idObject1));
Log.d("Json", json.toString());
Log.d("ParticipantsJson", gson.toJson(idObject1).toString());
.put
jsonオブジェクトは、メソッドを介して他のものも追加します。「ParticipantIds」キーで混乱しているだけです。
json.toString()
出力
{"ParticipantIds":"{\"Id\":\"Test1\",\"FirstName\":\"Test Name\",\"LastName\":\"Test Surname\",\"PhoneNumber\":\"12345\"}",
と
gson.toJson(idObject1).toString());
出力
{"Id":"Test1","FirstName":"Test Name","LastName":"Test Surname","PhoneNumber":"12345"}
jsonオブジェクトに渡された\
ときにjsonオブジェクトのオカレンスを削除する必要があります。idObject1
必ずしもGsonを使用する必要はありません。私はそれを機能させるためにGsonを使用しただけです。私も試しました:
json.put("ParticipantIds", idObject1);
そして、JSON-Simpleを使用してそれを渡してみました。私は常に\
エスケープ文字を取得します。私はそれをやってみて.toString()
、idObject1
それからあらゆる方法.replace
と.replaceAll
方法をやってみました。動作しません!