Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách thêm chuỗi JSON vào file JSON hiện có trong Java


Gson là thư viện JSON cho Java, dùng để sinh JSON. Ban đầu, đọc file JSON và parse thành object Java, sau đó typecast thành JsonObject và parse thành JsonArray. Duyệt array này để in JsonElement. Tạo class JsonWriter để ghi giá trị JSON encoded vào stream, từng token một. Cuối cùng, chuỗi JSON mới được ghi vào file JSON hiện có.

Ví dụ

import java.io.*; import java.util.*; import com.google.gson.*; import com.google.gson.stream.*; import com.google.gson.annotations.*; public class JSONFilewriteTest {    public static String nameRead;    public static void main(String[] args) {       try {          JsonParser parser = new JsonParser();          Object obj = parser.parse(new FileReader("employee1.json"));          JsonObject jsonObject = (JsonObject) obj;          System.out.println("The values of employee1.json file:\n" + jsonObject);          JsonArray msg = (JsonArray)jsonObject.get("emps");          Iterator<JsonElement> iterator = msg.iterator();          while(iterator.hasNext()) {             nameRead = iterator.next().toString();             System.out.println(nameRead);          }          Name name = new Name();          name.setName("Vamsi");          Gson gson = new Gson();          String json = gson.toJson(name);          FileWriter file = new FileWriter("employee1.json", false);          JsonWriter jw = new JsonWriter(file);          iterator = msg.iterator();          Employees emps = new Employees();          while(iterator.hasNext()) {             emps.addEmployee(gson.fromJson(iterator.next().toString(), Name.class));          }          emps.addEmployee(name);          gson.toJson(emps, Employees.class, jw);          file.close();          System.out.println("data added to an existing employee1.json file successfully");       } catch(Exception e) {          e.printStackTrace();       }    } } // Name class class Name {    @Expose    private String name;    public String getName() {       return name;    }    public void setName(String name) {       this.name = name;    } } // Employees class class Employees {    @Expose    List<Name> emps = new ArrayList<>();    public List<Name> getEmployees() {       return emps;    }    public void addEmployee(Name name) {       this.emps.add(name);    } }

Kết quả

The values of employee1.json file: {"emps":[{"name":"Adithya"},{"name":"Jai"}]} {"name":"Adithya"} {"name":"Jai"} data added to an existing employee1.json file successfully


File employee1.json

Cách thêm chuỗi JSON vào file JSON hiện có trong Java