Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- java error
- error
- CSS사용법
- Eclipse
- Android Apk 이름
- DataTable
- Android Apk 이름 변경
- android error
- Android Apk
- jQuery
- android fragment
- spring
- MySQL
- fragment
- tomcat
- Exception
- 안드로이드
- Firebase
- Program type already present
- Android
- release unsigned
- JavaScript
- Java
- Kotlin
- apache gzip
- release Apk
- css
- html
- FLUTTER
- R프로그래밍
Archives
- Today
- Total
selfstarter
json list 안에 list 읽기 본문
json list 안에 list 읽기
- json 구조는 아래처럼 list 안에 list가 있는 형태일 때, JSONArray에서 해당 list Object를 JSONArray로 변경해줘야 값을 읽을 수 있다.
- org.json.simple.JSONArray를 사용하지 않고 org.json.JSONArray를 사용해도 쉽게 바꿀 수 있다.
- org.json.JSONArray을 사용하면 org.json.simple.JSONParser 말고 다른 방식으로 json파일을 읽어와야 한다(불편하고 다른방법을 찾지 못해서 siimple json 사용)
[
{
"id" : 1,
"list" : [{ "id": 100, "name":"aaa"}, { "id": 101, "name":"bbb"}, { "id": 102, "name":"ccc"} ]
},
{
"id" : 2,
"list" : [{ "id": 200, "name":"aaa"}, { "id": 201, "name":"bbb"}, { "id": 202, "name":"ccc"} ]
},
]
Code
- fileName은 resource 아래에 있다.
- resource 아래 위치를 가져오는 방법은 여기 참조
FileReader fr = new FileReader(fileName); // 파일 입력 스트림 생성
JSONParser jsonParse = new JSONParser();
JSONArray jsonArray = (JSONArray)jsonParse.parse(fileReader); // json 파일을 읽어서 JSONArray에 저장
for (int i = 0; i < jsonArray.size(); ++i) {
JSONObject jo = (JSONObject)jsonArray.get(i); // 첫번째 list를 꺼낸다
String id = (String)jsonObject.get("id");
JSONArray arrays = (JSONArray)jo.get("list") // list 안의 list를 가져온다
for (Object obj : arrays) {
JSONObject childObj = (JSONObject)obj;
System.out.println(childObj.get("id"));
System.out.println(childObj.get("name"));
}
}
'Server > Spring' 카테고리의 다른 글
apache gzip 설정 (0) | 2019.10.09 |
---|---|
HttpServletRequest 모든 파라미터 가져오기 (0) | 2019.09.16 |
Spring resources 위치 가져오기 (0) | 2019.07.13 |
전자정부프레임워크(egov) logback 설정 (0) | 2019.07.12 |
Invalid bound statement error 해결 (1) | 2019.07.10 |
Comments