Gson.toJson添加额外的引号JSON
问题描述:
的字符串值
我的JSON对象是这样的:{ids:[2079]}
,但是当我试图使用Gson.toJson添加额外的引号JSON
Gson gson = new GsonBuilder().setExclusionStrategies(new GsonExclusionStrategy()).create();
gson.toJson(body);
gson.toJson()来获取字符串值打印"{\"ids\":[2079]}"
,其中因为预期的行为是{\"ids\":[2079]}
答
我想你是双重调用toJson()方法,它已经是一个字符串。 我的意思是如果你打电话给json()"{ids:[2079]}"
,那么它会产生"{\"ids\":[2079]}"
。所以检查你的对象。
答
我经历了同样的问题,但最终我得到了解决方案。 我加了commons-lang3-3.4 JAVA库。 download library
并使用示例代码。
String varibleString = StringEscapeUtils.unescapeJava(your JSON response string);
varibleString = varibleString .substring(1, varibleString .length() - 1);
try {
json = new JSONObject(varibleString);
}catch(Exception e)
{
e.printStackTrace();
}
StringEscapeUtils.unescapeJava(您的JSON响应字符串); 此方法将帮助您从JSON Strting中删除不需要的字符。
谢谢,我弄错了。 –