A JSON เป็น น้ำหนักเบา , แบบข้อความ และไม่ขึ้นกับภาษา รูปแบบการแลกเปลี่ยนข้อมูล JSON สามารถแสดงโครงสร้างสองประเภทเช่น วัตถุ และ อาร์เรย์ . เราสามารถถอดรหัสวัตถุ JSON โดยใช้ JSONObject และ JSONArray จาก json.simple API . JSONObject ทำงานเป็น java.util.Map ในขณะที่ JSONArray ทำงานเป็น java.util.List .
ในตัวอย่างด้านล่าง เราสามารถถอดรหัสวัตถุ JSON ได้
ตัวอย่าง
import org.json.simple.*; import org.json.simple.parser.*; public class JSONDecodingTest { public static void main(String[] args) { JSONParser parser = new JSONParser(); String str = "[ 0 , {\"1\" : { \"2\" : {\"3\" : {\"4\" : [5, { \"6\" : { \"7\" : 8 } } ] } } } } ]"; try { Object obj = parser.parse(str); JSONArray array = (JSONArray)obj; System.out.println("2nd Array element: "); System.out.println(array.get(1)); System.out.println(); JSONObject object2 = (JSONObject) array.get(1); System.out.println("Field \"1\""); System.out.println(object2.get("1")); str = "{}"; obj = parser.parse(str); System.out.println(obj); str = "[6,]"; obj = parser.parse(str); System.out.println(obj); str = "[6,,3]"; obj = parser.parse(str); System.out.println(obj); } catch(ParseException parseExp) { System.out.println("Exception position: " + parseExp.getPosition()); System.out.println(parseExp); } } }
ผลลัพธ์
2nd Array element: {"1":{"2":{"3":{"4":[5,{"6":{"7":8}}]}}}} Field "1" {"2":{"3":{"4":[5,{"6":{"7":8}}]}}} {} [6] [6,3]