我的JSON對象是這樣的:{ids:[2079]}
,但是當我試圖使用Gson.toJson添加額外的引號JSON
Gson gson = new GsonBuilder().setExclusionStrategies(new GsonExclusionStrategy()).create();
gson.toJson(body);
gson.toJson()來獲取字符串值打印"{\"ids\":[2079]}"
,其中因爲預期的行爲是{\"ids\":[2079]}
我的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中刪除不需要的字符。
謝謝,我弄錯了。 –