读取一个json文件并保存在GSON java的类数组中

问题描述 投票:0回答:0

好的,这是我的代码 --> 我有这门课

Fencers

    private String name,nation;
    private int id;

    public Fencers(String name, String nation,int id) {
        this.name = name;
        this.nation = nation;
        this.id = id;
    }
}

和另一个类

FencersList
将每个类对象存储在 ArrayList

import java.util.ArrayList;
public class FencersList {
    private ArrayList<Fencers> collection;
    public FencersList(){
    collection = new ArrayList<Fencers>();
    }

    public void addfencer(Fencers fencer){
        collection.add(fencer);
    }
}

所以我有这个文件

json.file
带有以下文件路径
"D:\\java\\Fencing\\src\\file.json"
这是里面的数据:

[
  {
    "name":"m",
    "nation":"egy",
    "id":100"
  },
  {
   "name":"342",
   "nation":"egy",
   "id":120"
  }
]

我想将此数据添加到

FencersList
而不是在嵌套的 Arraylist 中不知道该怎么做。我使用 Gson 库,这就是我首先在文件中获取数据的方式:

 public static void main(String[] args){
        Fencers fencer1 = new Fencers("m","egy",100);
        Fencers fencer2 = new Fencers("342","egy",120);
        FencersList list = new FencersList();
        list.addfencer(fencer1);
        list.addfencer(fencer2);
        Gson gson = new Gson();
        String path = "D:\\java\\Fencing\\src\\file.json";
        try (PrintWriter out = new PrintWriter(new FileWriter(path))) {
            String jsonString = gson.toJson(list.getCollection());
            out.write(jsonString);
        } catch (Exception e) {
            e.printStackTrace();
java json arraylist gson
© www.soinside.com 2019 - 2024. All rights reserved.