我試圖創建一個具有特定鍵和空值的JSONObject。但值應該是JSONObject而不是JSONArray。Java創建JSONObject爲空的值作爲JSONObject
我已經試過localJson.append(key, JSONObject.NULL);
或localJson.append(key, new JSONObject());
。 每次值是一個JSONArray與value[0] = null
或只是[{}]
有什麼辦法使它成爲JSONObject?
我試圖創建一個具有特定鍵和空值的JSONObject。但值應該是JSONObject而不是JSONArray。Java創建JSONObject爲空的值作爲JSONObject
我已經試過localJson.append(key, JSONObject.NULL);
或localJson.append(key, new JSONObject());
。 每次值是一個JSONArray與value[0] = null
或只是[{}]
有什麼辦法使它成爲JSONObject?
使用org.codehaus.jettison.json.JSONObject:
使用public JSONObject put(String key, Object value)
,而不是append
方法。
您的代碼不工作,因爲方法JSONObject append(String key, Object value)
定義如下:
public JSONObject append(String key, Object value) throws JSONException {
testValidity(value);
Object o = opt(key);
if (o == null) {
put(key, new JSONArray().put(value));
} else if (!(o instanceof JSONArray)){
throw new JSONException("JSONObject[" + key + "] is not a JSONArray.");
} else {
put(key, new JSONArray().put(o).put(value));
}
return this;
}
哇..謝謝你......我討厭自己。我打開了這部分,並讀取了JatchObject而不是JSONArray>。> –
請顯示[MCVE],而不是僅僅描述你已經嘗試了什麼。 –
你也應該指定你正在使用的庫。 – Hacketo