– JSON 파서는 Java Script Object Notation 의 약자로, Java Script 에서 주로 사용하는 파서입니다.
– 웹에서 정보를 주고받는 경량화된 방법이며, XML 파서가 아닌 script 에서 사용하는 자료형에 대한 파싱이 가능하다.
<자체 포맷>
1. 배열 : 대괄호 안에 값을 콤마로 나열 ex) [1, 2, 3]
2. 객체 : 중괄호 안에 이름:값 형태로 ex) {“name”:”babo”, “age”:26}
3. 단순 값 : 수치, 문자열, 논리형, null 지원.
Object get (int index) int getInt (int index) String getString int index) boolean getBoolean (int index) JSONArray getJSONArray (int index) JSONObject getJSONObject (int index)
Object get (String key) int getInt (String key) String getString (String key) boolean getBoolean (String key) JSONArray getJSONArray (String key) JSONObject getJSONObject (String key)
예제를 보며 얘기하자.
String Json = "[8, 9, 6, 2, 9]"; try{ int sum = 0; JSONArray ja = new JSONArray(Json); for (int i = 0; i < ja.length(); i++){ sum += ja.getInt(i); } } catch (JSONException e){ ;}
String Json = "[{\"Product\" : \"Mouse\", \"Maker\":\"Samsung\", \"Price\":23000}," + "{\"Product\" : \"KeyBoard\", \"Maker\":\"LG\", \"Price\":12000}," + "{\"Product\":\"HDD\", \"Maker\":\"Western Digital\", \"Price\":156000}]"; try{ String result = ""; JSONArray ja = new JSONArray(Json); for (int i = 0; i < ja.length(); i++){ JSONObject order = ja.getJSONObject(i); result += "product: " + order.getString("Product") + ", maker: " + order.getString("Maker") + ", price: " + order.getInt("Price") + "\n"; } } catch (JSONException e){ ;}