今天做工程时遇到一个问题
JSONObject objA = new JSONObject();
objA.put("key1",value1);
objA.put("key2",value2);
JSONObject objB = new JSONObject();
objB.put("key3",value3);
objB.put("key4",objA.toJSONString());//注意这里,是JSON中套了一层JSON
这个时候将objB转成json字符串,采用如下代码
String objBStr = objB.toJSONString();
打印出objBStr的结果
"{"key3":"value3","key4":"{"key1":"value1","key2":"value2"}"}"
很明显JSON中套JSON字符串时,会出现如上转义现象,解决办法如下
//方法1,采用StringEscapeUtils
String objectStr2 = StringEscapeUtils.unescapeJava(JSON.toJSONString(objB));
//方法2,暴力替换
String objBStr = objBStr.replace("\","");
toJSONString转义问题
点赞
收藏