본문 바로가기
IT 개발/안드로이드개발

[안드로이드]Json 파싱 - URL에서 JSON 읽기

by 만능이되고픈 잡캐 2018. 10. 12.


[안드로이드] JSON 파싱 - URL에서 JSON읽기

오늘은 Json파싱하는 방법중에서도 URL에서 내려받은 json데이터를 어떻게 사용하는지 포스팅해보려 해요.

restAPI나 서버에서 필요한 데이터들을 내려받을 때 xml 또는 Json을 이용하여 데이터를 내려받는 경우가 많죠. 

그 중에서도 Url에서 Json 데이터를 읽어오고 저장하는 방법에 대해 알아보도록 할게요.





먼저, 자신이 요청을 보낼 URL을 InputStream에 넣어준다.

그 방법으로는 .openStrem()메서드를 사용한다.

is = new URL('자신이 요청할 주소').openStream();


BufferedReader 를 이용하여 inputStream의 내용을 읽어온다.

BufferedReader rd = new BufferedReader(new InputStreamReader(is,"UTF-8");


StringBuffer를 통해 읽어온 내용을 String문자열로 추가한다.

String str;
StringBuffer buffer = new StringBuffer();
while ((str = rd.readLine()) != null) {
    buffer.append(str);
}



[전체소스]

        String url = "";
        InputStream is = null;
        try {
            is = new URL(url).openStream();
            BufferedReader rd = new BufferedReader(new InputStreamReader(is, "UTF-8"));
            String str;
            StringBuffer buffer = new StringBuffer();
            while ((str = rd.readLine()) != null) {
                buffer.append(str);
            }
            String receiveMsg = buffer.toString();
        } catch (IOException e) {
            e.printStackTrace();
        }


다음 소스를 이용하면 원하는 URL을 입력 시 Json데이터를 receiveMsg로 받을 수 있다.