2017-05-18 294 views
-1

這是非常簡單的一個,但非常困難。幫我解決這個問題。將JSON對象轉換爲JSON陣列

我有一個JSON數據{ 「ABC」: 「測試」, 「牀」: 「小牀」, 「幫助」: 「我」}我想上面的JSONObject轉換

成JSON數組一樣[ { 「ABC」: 「測試」, 「牀」: 「小牀」, 「幫助」: 「我」}]

JSONObject obj= new JSONObject(str.toString()); 
Iterator x = obj.keys(); 
JSONArray jsonArray = new JSONArray(); 
Map<String, String> map = new HashMap<String, String>(); 

while (x.hasNext()) { 
    for(int i=0;i<obj.length();i++) { 
    LOG.info("============="); 
    String key = (String) x.next(); 
    jsonArray.put(obj.get(key)); 
    } 
} 

我只得到了價值。請幫我解決這個問題。

+1

的[添加到JSONObject的java的JSONArray]可能的複製(http://stackoverflow.com/questions/42417911/add-jsonobject-to-jsonarray-java) –

+0

不是...它完全不同 – user6250770

回答

3

直接放的JSONObject即OBJ到jsonArray

jsonArray.put(obj); 
//result is [{ "abc":"test","bed":"cot","help":"me"}] 

最終代碼

JSONObject obj= new JSONObject(str); 
JSONArray jsonArray = new JSONArray(); 
//simply put obj into jsonArray 
jsonArray.put(obj); 
//result is [{ "abc":"test","bed":"cot","help":"me"}] 
+0

迭代器不再需要。如果str是一個String,則調用toString()是多餘的。 –

+0

謝謝,更新:) – Pehlaj

+0

謝謝噸...請爲我的問題,因爲我失去了我的觀點 – user6250770

0

它適合我。 JSONObject obj = new JSONObject(result.toString());}; JSONArray arr = obj.getJSONArray(「value」);

+0

但是,我有這麼多的JSON數據....我如何添加每個值。我需要自動化它。 – user6250770