2016-08-21 109 views
-3

我有這種格式的JSON。
我嘗試創建序列化類來存儲值。如何讀取JSON數組中的對象

如何閱讀「personaldata」字段?

我正在製作一個單獨的類PersonalData來讀取它。
在我的主序列化類我讀它作爲

List<PersonalData>personalData 

是它做的正確方法? 如果是這樣,我將如何獲取個人數據值?

{ 
    "result": [ 
    { 
     "name": 0, 
     "age": 1, 
     "class": 0, 
     // More data here 
     "personalData": { 
     "isMarried": true, 
     "isEligible": false, 
     "Indian": true 
     } 
    } 
    ] 
} 
+0

有成千上萬的回答這個問題了。您可以使用GSON,但在發佈問題前先搜索網頁。 –

回答

0

如果您使用的是一些像解析器或GSONLoganSquare可以使用他們的標註,這將是很容易直接解析JSONmodel。否則,如果您使用的是本地JSON API

您可以使用類似這樣

JSONArray arr=new JSONArray(response); 
JSONObject personalData=arr.getJSONObject("personalData"); 
+0

我只使用gson,我無法寫模型類來存儲valeues.i,我是新分析的。 –

+0

看到@ cricket_007的上面的答案,因爲他已經爲你創建模型的青睞。現在你可以使用GSON g = new GSON(); 結果r = g.fromJson(response,Results.class); –

0

我想提出一個單獨的類PersonalData讀它..

好,然後是你如何訪問它。通過從某些父項Results對象中獲取該對象。

例如,給出了一些實現以下類的,一旦你反序列化JSON,您使用Results.getResults().get(0).getPersonalData();

public class Results { 
    ArrayList<ResultData> result; 

    // TODO: write getResults() 
} 
public class ResultData { 
    int name, age, class; 
    // Some more data 
    PersonalData personalData; 

    // TODO: write getPersonalData() 
} 
public class PersonalData { 
    boolean isMarried, isEligible, Indian; 
}