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
- centos
- Spring
- Security
- Numpy
- Web
- git
- javascript
- ai
- Linux
- Deep
- interface
- framework
- DeepLearning
- SSH
- mariaDB
- Github
- 자바
- Pattern
- mysql
- java
- 인공지능
- 함수
- Python
- db
- LIST
- learning
- data
- error
- Server
- Analysis
Archives
- Today
- Total
PostIT
[Java/Json] Json데이터 Java로 파싱하기 - 퍼옴 본문
자바에서 JSON을 처리 하는 부분입니다.
String 형식의 JSON을 JSONObject 형으로 만들어 추출하는 예제 입니다.
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; public class JsonParserTest { public static void main(String[] args) { //JSON 데이터 String jsonInfo = "{\"books\":[{\"genre\":\"소설\",\"price\":\"100\",\"name\":\"사람은 무엇으로 사는가?\",\"writer\":\"톨스토이\",\"publisher\":\"톨스토이 출판사\"},{\"genre\":\"소설\",\"price\":\"300\",\"name\":\"홍길동전\",\"writer\":\"허균\",\"publisher\":\"허균 출판사\"},{\"genre\":\"소설\",\"price\":\"900\",\"name\":\"레미제라블\",\"writer\":\"빅토르 위고\",\"publisher\":\"빅토르 위고 출판사\"}],\"persons\":[{\"nickname\":\"남궁민수\",\"age\":\"25\",\"name\":\"송강호\",\"gender\":\"남자\"},{\"nickname\":\"예니콜\",\"age\":\"21\",\"name\":\"전지현\",\"gender\":\"여자\"}]}" ; /* { "books": [ { "genre": "소설", "price": "100", "name": "사람은 무엇으로 사는가?", "writer": "톨스토이", "publisher": "톨스토이 출판사" }, { "genre": "소설", "price": "300", "name": "홍길동전", "writer": "허균", "publisher": "허균 출판사" }, { "genre": "소설", "price": "900", "name": "레미제라블", "writer": "빅토르 위고", "publisher": "빅토르 위고 출판사" } ], "persons": [ { "nickname": "남궁민수", "age": "25", "name": "송강호", "gender": "남자" }, { "nickname": "예니콜", "age": "21", "name": "전지현", "gender": "여자" } ] } */ try { JSONParser jsonParser = new JSONParser(); //JSON데이터를 넣어 JSON Object 로 만들어 준다. JSONObject jsonObject = (JSONObject) jsonParser.parse(jsonInfo); //books의 배열을 추출 JSONArray bookInfoArray = (JSONArray) jsonObject.get( "books" ); System.out.println( "* BOOKS *" ); for ( int i= 0 ; i<bookInfoArray.size(); i++){ System.out.println( "=BOOK_" +i+ " ===========================================" ); //배열 안에 있는것도 JSON형식 이기 때문에 JSON Object 로 추출 JSONObject bookObject = (JSONObject) bookInfoArray.get(i); //JSON name으로 추출 System.out.println( "bookInfo: name==>" +bookObject.get( "name" )); System.out.println( "bookInfo: writer==>" +bookObject.get( "writer" )); System.out.println( "bookInfo: price==>" +bookObject.get( "price" )); System.out.println( "bookInfo: genre==>" +bookObject.get( "genre" )); System.out.println( "bookInfo: publisher==>" +bookObject.get( "publisher" )); } JSONArray personInfoArray = (JSONArray) jsonObject.get( "persons" ); System.out.println( "\r\n* PERSONS *" ); for ( int i= 0 ; i<personInfoArray.size(); i++){ System.out.println( "=PERSON_" +i+ " ===========================================" ); JSONObject personObject = (JSONObject) personInfoArray.get(i); System.out.println( "personInfo: name==>" +personObject.get( "name" )); System.out.println( "personInfo: age==>" +personObject.get( "age" )); System.out.println( "personInfo: gender==>" +personObject.get( "gender" )); System.out.println( "personInfo: nickname==>" +personObject.get( "nickname" )); } } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } |
'Java' 카테고리의 다른 글
[JAVA]jsoup - 자바를 위한 BeautifulSoup (HTML parser) - 퍼옴 (0) | 2016.11.15 |
---|---|
[JAVA/JSON] URL에 있는 Json Data를 가져오기 위한 메소드(JAVA) (0) | 2016.10.26 |
[Java/Annotation] @SuppressWarnings란? - 퍼옴 (1) | 2016.10.26 |
[Java/Json] Java에서 Json으로 파싱하기 - 퍼옴. (0) | 2016.10.20 |
[Java]자바에서 스트링 비교하기(equals와 ==의 차이점) (0) | 2016.08.16 |
Comments