2016-08-12 28 views
-4

如何創建JSONObject其中3 JSONArrays如何創建包含這3個JSONArrays的JSONObject?

我想爲下面給出的代碼創建一個JSONObject並獲取所有數據。

任何人都可以指定一個優雅的方法(注意:我不想在我的代碼中使用GSON)。爲了存儲這個,我將這些數據作爲字符串存儲到我的首選項中。

{ 
    "array_1": [{ 
     "url": "xyz", 
     "position": "5", 
     "thumbnailImage": "" 
    }], 
    "array_2": [{ 
     "url": "abc", 
     "position": "1", 
     "thumbnailImage": "" 
    }, { 
     "url": "def", 
     "position": "2", 
     "thumbnailImage": "" 
    }, { 
     "url": "ghi", 
     "position": "3", 
     "thumbnailImage": "" 
    }, { 
     "url": "jkl", 
     "position": "4", 
     "thumbnailImage": "" 
    }], 
    "array_3": [{ 
     "url": "mno", 
     "position": "0", 
     "thumbnailImage": "" 
    }] 
} 
+1

[如何解析JSON在Java中(HTTP的可能重複://計算器。 com/questions/2591098/how-to-parse-json-in-java) – Selvin

+0

這個json看起來都錯了。所有3個數組在索引中具有相同的鍵。這是打算? – Ichthyocentaurs

+1

遵循以下簡單步驟:1.聘請開發人員,2.付給他$ _ $,3.告訴他該怎麼做。 :P – Sufian

回答

-1

JSONArray array1,array2,array3; JSONObject obj;

obj=new JSONObject(); 
    array1=new JSONArray(); 
    array2=new JSONArray(); 
    array3=new JSONArray(); 
    array1=obj.getJSONArray("array_1"); 
    array2=obj.getJSONArray("array_2"); 
    array3=obj.getJSONArray("array_3"); 

,你可以得到陣列這樣

+0

我想創建此JSONObjects。 –

+0

並以字符串格式發送 –

-1

你可以用這個啓動:

 try { 
      JSONObject element = new JSONObject(); 
      element.put("url", "xyz"); 
      element.put("position", "5"); 
      element.put("thumbnailImage", ""); 

      JSONArray arr = new JSONArray(); 
      arr.put(element); 

      JSONObject root = new JSONObject(); 
      root.put("array_1", arr); 

      /* to convert to string */    
      root.toString(1); 

     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 
+0

我發佈的代碼正在工作,並且是一個很好的起點。我看不出有什麼好處。 @Lajeet Adhikary有幫助嗎? – Lino

-1
try { 

      JSONObject data=new JSONObject(); 
      JSONObject jsonObject = new JSONObject(); 
      jsonObject.put("url", "xyz"); 
      jsonObject.put("position", "5"); 
      jsonObject.put("thumbnailImage", ""); 
      JSONArray jsonArray1=new JSONArray(); 
      jsonArray1.put(jsonObject); 
      data.put("array_1",jsonArray1); 


      jsonArray1=new JSONArray(); 


      jsonObject=new JSONObject(); 
      jsonObject.put("url","abc"); 
      jsonObject.put("position","1"); 
      jsonObject.put("thumbnailImage",""); 
      jsonArray1.put(jsonObject); 


      jsonObject=new JSONObject(); 
      jsonObject.put("url","def"); 
      jsonObject.put("position","2"); 
      jsonObject.put("thumbnailImage",""); 
      jsonArray1.put(jsonObject); 

      jsonObject=new JSONObject(); 
      jsonObject.put("url","ghi"); 
      jsonObject.put("position","3"); 
      jsonObject.put("thumbnailImage",""); 
      jsonArray1.put(jsonObject); 

      jsonObject=new JSONObject(); 
      jsonObject.put("url","jkl"); 
      jsonObject.put("position","4"); 
      jsonObject.put("thumbnailImage",""); 
      jsonArray1.put(jsonObject); 

      data.put("array_2",jsonArray1); 

      jsonArray1=new JSONArray(); 


      jsonObject=new JSONObject(); 
      jsonObject.put("url","mno"); 
      jsonObject.put("position","0"); 
      jsonObject.put("thumbnailImage",""); 
      jsonArray1.put(jsonObject); 

      data.put("array_3",jsonObject); 


      String stdata=data.toString(); \\is required the string 



     }catch (JSONException e) 
     { 
      e.printStackTrace(); 
     } 
相關問題