본문 바로가기

Programming/Java & JSP & Spring

[JSON] KEY 값 추출해서 사용하기

JSON 값을 받아서 파싱을 해야하는데 KEY 값을 모르는 경우가 있을 수 있다.

KEY값 추출은 JSONObject 안의 개수가 때마다 일정하지 않을 때 주로 사용된다.


다음과 같은 json 데이터를 받는다고 가정해보자


{

"fruit": {

"apple": "500원",

"banana": "200원",

"watermelon": "300원",

"peach": "350원",

"strawberry": "50원",

"orange": "200원"

}

}


과일 이름으로 된 key값을 받아오려면 keys() 메소드와 Iterator 반복자를 사용해서

한번에 받아올 수 있다.


try {
JSONObject jsonObject = new JSONObject(fruitList);
String fruitValue = jsonObject.getString("fruit");

JSONObject fruitObject = new JSONObject(fruitValue); // fruit key 에 있는 JSON Object
Iterator i = fruitObject.keys(); // key값들을 모두 얻어옴.

while(i.hasNext())
{
String b = i.next().toString();
fruitKeyList.add(b); // 키 값 저장
}

for(int j = 0; j<fruitKeyList.size();j++) // 추출
{
fruitValueList.add(fruitObject.getString(fruitKeyList.get(j)));
Log.d("ITPangpang",(j+1)+"번째 과일이름->"+fruitKeyList.get(j));
Log.d("ITPangpang",(j+1)+"번째 과일가격->"+fruitValueList.get(j));
}
}
catch (JSONException e) {
e.printStackTrace();
}







※ 출처 : http://itpangpang.xyz/269

'Programming > Java & JSP & Spring' 카테고리의 다른 글

[Java] 자주 쓰이는 형변환  (0) 2017.10.15
[Spring Boot] JPA UPDATE  (0) 2017.08.17
[Java] String, Date 타입 간의 변환  (0) 2017.08.17
[Spring] 예외처리  (0) 2017.08.12
[SpringBoot] 프로퍼티 이용하기  (0) 2017.08.08