我使用Java类创建了一些JSONObject。让我们称之为MyJSONObject。它应该是另一个JSON对象的内部String部分。这样:
[
{
"httpRequest": {...},
"httpResponse": {
"headers": {
"content-type": [
"application/json"
]
},
"body": "MyJSONObject"
}
]
问题是当我尝试使用mapper.writeValueAsString(MyJSONObject)将其作为字符串放置时,我在控制台主体中收到所有带反斜杠的引号:
[
{
"httpRequest": {...},
"httpResponse": {
"headers": {...},
"body": "{\"key\":\"value\",\"key\":\"value\"}"
}
]
而不是预期的:
"body": "{"key":"value","key":"value"}"
我尝试对我的字符串使用方法replace("\"", "\\\"")
用反斜杠将每个引号替换为引号,但结果甚至更糟:
"body": "{\\\"key\\\":\\\"value\\\",\\\"key":\\\"value\\\"}"
我怎样才能将我的字符串放在反斜杠旁边?
答案 0 :(得分:-1)
您可以尝试以下方法,这将为您带来预期的结果。
JSONObject subJson = new JSONObject(); subJson.put(“name”, “java”);
JSONObject parentJson = new JSONObject() parentJson.put(“company”, ”stack”); parentJson.put(“employees”, subJson);
System.out.print(“Final output - ” + parentJson.toString());