Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

สร้าง JSON Array ด้วย Java (json-simple library)

JSON Array คือคอลเลกชันค่าที่เรียงลำดับ ล้อมรอบด้วย square brackets [ ... ] คั่นด้วย comma

ตัวอย่าง JSON Array

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

JSON-Simple Library

ไลบรารีเบาๆ สำหรับประมวลผล JSON ใช้ Maven dependency:


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

ขั้นตอนสร้าง JSON Array

  1. สร้าง JSONObject
  2. ใส่ key-value ด้วย put()
  3. สร้าง JSONArray เพิ่ม element ด้วย add()
  4. ใส่ array ลง JSONObject ด้วย put()
  5. เขียนไฟล์ด้วย FileWriter

ตัวอย่างโค้ดเต็ม


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();
        
        // Key-value pairs
        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");
        
        // สร้าง Array
        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");
        
        // ใส่ array ลง object
        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);
    }
}

ผลลัพธ์ (ไฟล์ JSON)


{
  "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"
}