KKGRAM
Java String To JsonArray & JsonArray To String[] 본문
서버랑 통신하고 하다보면 json 형식을 주로 쓴다. 주로라기보다 거의 무조건 적이다. 근데 머리가 항상 빠가라 json 형태를 받아와서 이것저것 굴려 먹어야 할 때마다 인터넷에 검색하고있다. 그냥 모든 검색 내용을 내 블로그에 때려박자..! 먼저 이번 플젝에서는 아직 서버가 구현되지 않았기 때문에 서버에서 데이터를 받아왔을 때를 가정하고 해야한다.
String에 json형태의 문자열을 만들어준다.
String s = "[{\"addr\":\"전남\"},{\"addr\":\"전북\"},{\"addr\":\"대구\"},"+ "{\"addr\":\"대전\"},{\"addr\":\"경기\"},{\"addr\":\"충북\"},"+ "{\"addr\":\"인천\"},{\"addr\":\"부산\"},{\"addr\":\"울릉\"},"+ "{\"addr\":\"청주\"},{\"addr\":\"충남\"},{\"addr\":\"제주\"},{\"addr\":\"서울\"}]";
이렇게 들어온 String를 JsonArray형태로 바꿔주는 것 또한 간단하다.
try { JSONArray arr = new JSONArray(s); } catch (JSONException e) { e.printStackTrace(); }
그리고 만들어진 JsonArray형태를 String[] 에 담기위해서 하나의 함수를 작성한다.
public static String[] getStringArray(JSONArray jsonArray) throws JSONException { String[] stringArray = null; int length = jsonArray.length(); if(jsonArray!=null){ stringArray = new String[length]; for(int i=0;i<length;i++){ stringArray[i]= jsonArray.getJSONObject(i).getString("addr"); //"addr"에서는 가져오고 싶은 데이터의 key값을 입력해주면 된다. } } return stringArray; }
전체 형태로 보면 소스는 이렇다.
String s = "[{\"addr\":\"전남\"},{\"addr\":\"전북\"},{\"addr\":\"대구\"},"+ "{\"addr\":\"대전\"},{\"addr\":\"경기\"},{\"addr\":\"충북\"},"+ "{\"addr\":\"인천\"},{\"addr\":\"부산\"},{\"addr\":\"울릉\"},"+ "{\"addr\":\"청주\"},{\"addr\":\"충남\"},{\"addr\":\"제주\"},{\"addr\":\"서울\"}]"; try { JSONArray arr = new JSONArray(s); location = getStringArray(arr); } catch (JSONException e) { e.printStackTrace(); } public static String[] getStringArray(JSONArray jsonArray) throws JSONException { String[] stringArray = null; int length = jsonArray.length(); if(jsonArray!=null){ stringArray = new String[length]; for(int i=0;i<length;i++){ stringArray[i]= jsonArray.getJSONObject(i).getString("addr"); //"addr"에서는 가져오고 싶은 데이터의 key값을 입력해주면 된다. } } return stringArray; }
이제 그만 검색하고 내 블로그에서 확인하자^_ㅠ... 이랬는데 내 블로그에 올려놓은것도 까먹을 느낌.
'개발' 카테고리의 다른 글
JSONObject의 get 사용 시 NullException 처리하기 (0) | 2016.02.02 |
---|---|
(Object to Json) Object 를 Json 으로 변환하기 마지막엔 String로 (1) | 2016.01.25 |
JavaScript replace를 Java replaceAll 처럼 사용하기 (0) | 2016.01.19 |
android Studio inputType 정리 (0) | 2016.01.17 |
android studio 검색되는 리스트 뷰 만들기 (0) | 2016.01.17 |
Comments