我的JSON对象就像:{ids:[2079]}
,但当我尝试使用
Gson gson = new GsonBuilder().setExclusionStrategies(new GsonExclusionStrategy()).create();
gson.toJson(body);
gson.toJson()正在打印"{\"ids\":[2079]}"
,其中预期行为为{\"ids\":[2079]}
答案 0 :(得分:4)
我认为你是双重调用toJson()方法,它已经是一个String了。
我的意思是如果你在"{ids:[2079]}"
上调用json(),那么它将产生"{\"ids\":[2079]}"
。所以检查你的对象。
答案 1 :(得分:0)
我遇到了同样的问题,但最终我得到了解决方案。 我添加了commons-lang3-3.4 JAVA Library。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中删除不需要的字符。