A Gson জাভার জন্য একটি json লাইব্রেরি এবং এটি একটি JSON তৈরি করতে ব্যবহার করা যেতে পারে। প্রাথমিক ধাপে, আমরা একটি JSON ফাইল পড়তে পারি এবং একটি জাভা অবজেক্টে পার্সিং করতে পারি তারপর টাইপকাস্ট করতে হবে একটি JSonObject -এ জাভা অবজেক্ট এবং একটি JsonArray-এ পার্সিং করা হচ্ছে . তারপর JsonElement প্রিন্ট করতে এই JSON অ্যারেটি পুনরাবৃত্তি করুন . আমরা একটি JsonWriter তৈরি করতে পারি একটি স্ট্রীমে একটি JSON এনকোড করা মান লিখতে ক্লাস, একবারে একটি টোকেন। অবশেষে, একটি নতুন JSON স্ট্রিং একটি বিদ্যমান json ফাইলে লেখা যেতে পারে।
উদাহরণ
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); } }
আউটপুট
The values of employee1.json file: {"emps":[{"name":"Adithya"},{"name":"Jai"}]} {"name":"Adithya"} {"name":"Jai"} data added to an existing employee1.json file successfully
employee1.json ফাইল