Search This Blog

Showing posts with label json. Show all posts
Showing posts with label json. Show all posts

Monday, April 4, 2016

JSON.simple example – Read and write JSON

JSON.simple, is a simple Java library for JSON processing, read and write JSON data and full compliance with JSON specification (RFC4627).
Note
To convert object to / from JSON, you should consider Jackson or Gson.
In this tutorial, we show you how to use JSON.simple to read and write JSON data from / to a file.

1. JSON.simple Dependency

JSON.simple is available at Maven central repository, just declares following dependency in your pom.xml file.
Markup
  <dependency>
 <groupId>com.googlecode.json-simple</groupId>
 <artifactId>json-simple</artifactId>
 <version>1.1</version>
  </dependency>

2. Write JSON to file

In below example, it write JSON data via JSONObject and JSONArray, and save it into a file named “test.json“.
Java
import java.io.FileWriter;
import java.io.IOException;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

public class JsonSimpleExample {
     public static void main(String[] args) {

 JSONObject obj = new JSONObject();
 obj.put("name", "learnwithnitin.com");
 obj.put("age", new Integer(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:\\test.json");
  file.write(obj.toJSONString());
  file.flush();
  file.close();

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

 System.out.print(obj);

     }

}
Output – See content of file named “test.json“.
Bash
{
 "age":100,
 "name":"learnwithnitin.com",
 "messages":["msg 1","msg 2","msg 3"]
}

3. Read JSON from file

Use JSONParser to read above generated JSON file “test.json“, and display each of the values.
Java
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class JsonSimpleExample {
     public static void main(String[] args) {

 JSONParser parser = new JSONParser();

 try {

  Object obj = parser.parse(new FileReader("c:\\test.json"));

  JSONObject jsonObject = (JSONObject) obj;

  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<String> iterator = msg.iterator();
  while (iterator.hasNext()) {
   System.out.println(iterator.next());
  }

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

     }

}
Output
Bash
learnwithnitin.com
100
msg 1
msg 2
msg 3

References

  1. JSON.simple official website
  2. JSON.simple encoding JSON example
  3. JSON.simple decoding JSON example

My Profile

My photo
can be reached at 09916017317