toJSONString转义问题

旧街凉风 提交于 2019-12-05 20:01:16

今天做工程时遇到一个问题
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("\","");

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!