我在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());
json 对象还通过该.put
方法获得添加到它的其他内容。它只是在“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 对象中的出现。idObject1
它不一定必须使用 Gson。我只是为了让它工作而使用 Gson。我也试过:
json.put("ParticipantIds", idObject1);
并尝试使用 JSON-Simple 传递它。我总是得到\
转义字符。我什至尝试过.toString()
做idObject1
各种方法.replace
和.replaceAll
方法。它不起作用!