JSON.simple Beispiel - JSON lesen und schreiben

JSON.simple – Read and write JSON

JSON.simple ist eine einfache Java-Bibliothek für die JSON-Verarbeitung, das Lesen und Schreiben von JSON-Daten und die vollständige Einhaltung vonJSON specification (RFC4627)

Warning
In diesem Artikel werden die altenJSON.simple 1.x verwendet, die veraltet sind und vom Autor nicht mehr gepflegt werden. Bitte besuchen Sie diesen aktualisierten Artikel -JSON.simple 3.x – How to parse JSON

Why not Jackson or Gson?
Möglicherweise haben Sie Interesse, diesen Artikel zu lesen - So analysieren Sie JSON mitJackson oderGson

1. Laden Sie JSON.simple herunter

pom.xml

    
        com.googlecode.json-simple
        json-simple
        1.1.1
    

2. Schreiben Sie JSON in die Datei

JsonSimpleWriteExample.java

package com.example;

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

import java.io.FileWriter;
import java.io.IOException;

public class JsonSimpleWriteExample {

    public static void main(String[] args) {

        JSONObject obj = new JSONObject();
        obj.put("name", "example.com");
        obj.put("age", 100);

        JSONArray list = new JSONArray();
        list.add("msg 1");
        list.add("msg 2");
        list.add("msg 3");

        obj.put("messages", list);

        try (FileWriter file = new FileWriter("c:\\projects\\test.json")) {
            file.write(obj.toJSONString());
        } catch (IOException e) {
            e.printStackTrace();
        }

        System.out.print(obj);

    }

}

Ausgabe

Terminal

{"name":"example.com","messages":["msg 1","msg 2","msg 3"],"age":100}

c:\projects\test.json

{"name":"example.com","messages":["msg 1","msg 2","msg 3"],"age":100}

3. Lesen Sie JSON in Datei

JsonSimpleReadExample.java

package com.example;

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.util.Iterator;

public class JsonSimpleReadExample {

    public static void main(String[] args) {

        JSONParser parser = new JSONParser();

        try (Reader reader = new FileReader("c:\\projects\\test.json")) {

            JSONObject jsonObject = (JSONObject) parser.parse(reader);
            System.out.println(jsonObject);

            String name = (String) jsonObject.get("name");
            System.out.println(name);

            long age = (Long) jsonObject.get("age");
            System.out.println(age);

            // loop array
            JSONArray msg = (JSONArray) jsonObject.get("messages");
            Iterator iterator = msg.iterator();
            while (iterator.hasNext()) {
                System.out.println(iterator.next());
            }

        } catch (IOException e) {
            e.printStackTrace();
        } catch (ParseException e) {
            e.printStackTrace();
        }

    }


}

Ausgabe

Terminal

{"name":"example.com","messages":["msg 1","msg 2","msg 3"],"age":100}
example.com
100
msg 1
msg 2
msg 3