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

Cách tạo/g ghi mảng JSON (JSON array) bằng Java

Mảng JSON là tập hợp các giá trị có thứ tự, bao quanh bởi dấu ngoặc vuông: bắt đầu bằng [ và kết thúc bằng ]. Các giá trị cách nhau bằng dấu phẩy ,.

Mảng JSON mẫu

{ 
    "books": [ "Java", "JavaFX", "Hbase", "Cassandra", "WebGL", "JOGL" ] 
}

Thư viện json-simple nhẹ, dùng xử lý đối tượng JSON. Cho phép đọc/ghi tài liệu JSON bằng Java.

Maven dependency json-simple

<dependencies> 
    <dependency> 
        <groupId>com.googlecode.json-simple</groupId> 
        <artifactId>json-simple</artifactId> 
        <version>1.1.1</version> 
    </dependency> 
</dependencies>

Dán vào thẻ <dependencies> trong pom.xml (trước </project>).

Các bước tạo mảng JSON

  1. Khởi tạo JSONObject của json-simple.
    JSONObject jsonObject = new JSONObject();
  2. Chèn cặp key-value bằng put().
    jsonObject.put("key", "value");
  3. Tạo mảng JSON bằng JSONArray, thêm phần tử bằng add().
    JSONArray array = new JSONArray(); 
    array.add("element_1"); 
    array.add("element_2"); 
    array.add("element_3");
  4. Thêm mảng vào JSON object bằng put().
    jsonObject.put("contact", array);
  5. Ghi JSON object vào file dùng FileWriter.
    FileWriter file = new FileWriter("E:/json_array_output.json"); 
    file.write(jsonObject.toJSONString()); 
    file.close();

Ví dụ hoàn chỉnh

import java.io.FileWriter; 
import java.io.IOException; 
import org.json.simple.JSONArray; 
import org.json.simple.JSONObject; 

public class WritingJSONArray { 
    public static void main(String args[]) { 
        JSONObject jsonObject = new JSONObject(); 
        jsonObject.put("ID", "1"); 
        jsonObject.put("First_Name", "Krishna Kasyap"); 
        jsonObject.put("Last_Name", "Bhagavatula"); 
        jsonObject.put("Date_Of_Birth", "1989-09-26"); 
        jsonObject.put("Place_Of_Birth", "Vishakhapatnam"); 
        jsonObject.put("Country", "25000"); 
        
        JSONArray array = new JSONArray(); 
        array.add("e-mail: krishna_kasyap@gmail.com"); 
        array.add("phone: 9848022338"); 
        array.add("city: Hyderabad"); 
        array.add("Area: Madapur"); 
        array.add("State: Telangana"); 
        
        jsonObject.put("contact", array); 
        
        try { 
            FileWriter file = new FileWriter("E:/json_array_output.json"); 
            file.write(jsonObject.toJSONString()); 
            file.close(); 
        } catch (IOException e) { 
            e.printStackTrace(); 
        } 
        System.out.println("JSON file created: " + jsonObject); 
    } 
}

Kết quả đầu ra

JSON file created: { 
    "First_Name":"Krishna Kasyap", 
    "Place_Of_Birth":"Vishakhapatnam", 
    "Last_Name":"Bhagavatula", 
    "contact":[ "e-mail: krishna_kasyap@gmail.com", "phone: 9848022338", "city: Hyderabad", "Area: Madapur", "State: Telangana" ], 
    "Country":"25000", "ID":"1", "Date_Of_Birth":"1989-09-26" 
}