为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 Java 和 Gson 从 Json 获取对象列表

如何使用 Java 和 Gson 从 Json 获取对象列表

料青山看我应如是 2021-09-03 13:25:39
我尝试从 Json 文件中读取并将其转换为 Java 对象,我有以下 Java 代码来读取 Json:class Item {    String name;    int itemId;    Date AddTime;    String group;}Gson gson = new Gson();gson.fromJson(jsonFile, new TypeToken<Map<String, ArrayList<Item>>>() {}.getType());并且 Json 文件包含以下数据:{  "item1": [{    "name": "test1",    "itemId": "1",    "AddTime": "2018-09-05T10:35:56.015Z",    "group": "computer"  }, {    "name": "test2",    "itemId": "2",    "AddTime": "2018-09-05T10:35:56.016Z",    "group": "computer"  }, {    "name": "test3",    "itemId": "3",    "AddTime": "2018-09-05T10:35:56.017Z",    "group": "computer"  }],  "item2": [{    "name": "test4",    "itemId": "4",    "AddTime": "2018-09-05T10:35:56.015Z",    "group": "computer"  }, {    "name": "test5",    "itemId": "5",    "AddTime": "2018-09-05T10:35:56.016Z",    "group": "computer"  }, {    "name": "test6",    "itemId": "6",    "AddTime": "2018-09-05T10:35:56.017Z",    "group": "computer"  }]}我得到以下信息:com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1我是 Java 新手,有什么问题以及如何解决?
查看完整描述

1 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

我不确定这是否是您需要的,但我认为解决方案可能是这样的。


根据你的数据集。在您的每个项目中,您都有一个带有测试的 arrayList (test1, test2 ...),因此您将需要这样的东西:


    class Item {

       ArrayList<Test> tests;

    }


    class Test{

       String name;

       int itemId;

       Date AddTime;

       String group;

    }


查看完整回答
反对 回复 2021-09-03
  • 1 回答
  • 0 关注
  • 149 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信