JsonArray嵌套对象 - > GSON

时间:2016-01-22 20:22:11

标签: java json

我有这个Json文件:

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

在Java中使用Gson如何访问“数据”部分,然后“列表”并将其转换为ArrayList?我试过在网上看,他们都表现得太复杂,我想要的东西,比如将一个班级序列化为Json。我不想那样..如何访问“data”对象里面的“List”数组并放入ArrayList?

2 个答案:

答案 0 :(得分:1)

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

从那里你可以使用dataList并迭代元素。

答案 1 :(得分:0)

如果定义类似这样的类,则可以在没有任何其他适配器类的情况下序列化/反序列化此类JSON。

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

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

(如果您的策略需要,则最终@SerializedName注释)