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]