2016-01-22 44 views
0

我有這樣的JSON文件:JsonArray嵌套的對象 - > GSON

{ 
    "code": "#0", 
    "data": { 
    "list": [ 
     "Chris", 
     "Matt" 
    ], 
    "time": 1453318488122 
    }, 
    "millis": "1453492643260" 
} 

在Java中使用GSON怎樣訪問「數據」部分,則「清單」,並把它變成一個ArrayList?我嘗試在網上尋找,他們都顯示事情太複雜,我想要的東西,比如序列化一個類到Json。我不想那樣..我如何訪問「數據」對象內的「List」數組並放入一個ArrayList?

回答

0

如果你定義一個像這樣的類,你可以在沒有任何附加適配器類的情況下序列化/反序列化這樣的JSON。

class MyPojo { 
    String code; 
    long millis; 
    Data data; 

    static class Data { 
    List<String> list; 
    long time; 
    } 
} 

(+如果最終@SerializedName註釋你的戰略需要他們)

+0

我不明白嗎?是不是有一種簡單的方法,我可以將該JsonArray List並將其轉換爲ArrayList?我確定有......我只是不知道該怎麼做。 – JustRayz

+0

如果你只需要從JSON文本中提取List,那麼就看看@ NG的答案。 –

2
JsonObject fullObject = new JsonParser().parse(yourFileData).getAsJsonObject(); 
JsonObject data = fullObject.getAsJsonObject('data'); 
JsonArray dataList = data.getAsJsonArray('list'); 

從那裏,你可以使用dataList和迭代的元素。

+0

比你喲這麼多!工作完美!我確信我嘗試了這個,但是idk:D。順便說一句'不工作在Java中,你的意思是「:D – JustRayz