2015-11-06 138 views
1

在響應中,我期望JSON字符串。 但現在我必須爲要檢索的對象提供一個鍵。我想要的迴應只是簡單的{「xx」:「xx」,「xx」:「xx」}格式,沒有一個像這樣的名字的數組{{「XX」:[「xx」:「xx」]}。我如何獲取JSON而不必提供參數。總之,我只想讀取我得到的JSON響應,而不必提供參數。Java抽象空json對象

protected JSONObject parseJSONMeth() { 
      JSONObject jsonObject = null; 
      try { 
       jsonObject = new JSONObject(json); 
       users = jsonObject.getJSONArray(JSON_ARRAY); 
       JSONObject jo = users.getJSONObject(0); 
       return jo; 
      } catch (JSONException e) { 
       e.printStackTrace(); 
      } 
      return jsonObject; 
     } 

回答

0

你爲什麼不使用GSON https://sites.google.com/site/gson/gson-user-guide

Gson gson = new GsonBuilder().create(); 
User result = new User(); 
result=(gson.fromJson(json, User .class)); 

並可爲用戶列表:

private static List<User> getDataFromJson(String json) { 
     Gson gson = new GsonBuilder().create(); 
     List<User> result = null; 

     try { 
      JSONObject posts=new JSONObject(json); 
      result = gson.fromJson(posts.toString(), new TypeToken<List<User>>(){}.getType()); 
     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 

     return result; 
    }