如何使用 Java 编写/创建 JSON 数组?

javaobject oriented programmingprogramming

JSON 数组是包含在方括号中的有序值集合,即以"["开头,以"]"结尾。数组中的值以"," (逗号) 分隔。

示例 JSON 数组

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

JSON-simple 是一个轻量级库,用于处理 JSON 对象。使用此功能,您可以使用 Java 程序读取或写入 JSON 文档的内容。

JSON-Simple maven 依赖项

以下是 JSON-simple 库的 maven 依赖项 −

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

将其粘贴到 pom.xml 文件末尾的 <dependencies> </dependencies> 标记中。(在 </project> 标记之前)

示例

使用 Java 程序在 JSON 文件中创建数组 −

  • 实例化 json-simple 库的 JSONObject 类。
//创建 JSONObject 对象
JSONObject jsonObject = new JSONObject();
  • 使用 JSONObject 类的 put() 方法插入所需的键值对。
jsonObject.put("key", "value");
  • 通过实例化 JSONArray 类创建 JSON 数组,并使用 JSONArray 类的 add() 方法将元素添加到创建的数组中。
JSONArray array = new JSONArray();
array.add("element_1");
array.add("element_2");
array.add("element_3");
  • 添加所有必需元素后,使用 put() 方法将数组添加到 JSON 文档中,如下所示 -
jsonObject.put("contact",array);
  • 使用 FileWriter 类将创建的 JSON 对象写入文件,如下所示 -
FileWriter file = new FileWriter("E:/json_array_output.json");
file.write(jsonObject.toJSONString());
file.close();

以下 Java 程序创建一个包含数组的 JSON 对象,并将其写入名为 json_array_output.json 的文件中。

示例

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[]) {
      //Creating a JSONObject object
      JSONObject jsonObject = new JSONObject();
      //Inserting key-value pairs into the json object
      jsonObject.put("ID", "1");
      jsonObject.put("First_Name", "Krishna Kasyap");
      jsonObject.put("Last_Name", "Bhagavatula");
      jsonObject.put("Date_Of_Birth", "1998-09-26");
      jsonObject.put("Place_Of_Birth", "Vishakhapatnam");
      jsonObject.put("Country", "25000");
      //Creating a json 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");
      //Adding array to the json object
      jsonObject.put("contact",array);
      try {
         FileWriter file = new FileWriter("E:/json_array_output.json");
         file.write(jsonObject.toJSONString());
         file.close();
      } catch (IOException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
      }
      System.out.println("JSON file created: "+jsonObject);
   }
}

输出

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":"1998-09-26"}

如果您观察 JSON 文件的内容,您可以看到创建的数据为 −


相关文章