String을 JSONObject 파싱하는 방법

아래 소스는 String을 JSONObject로 파싱하는 방법입니다.

이와 같은 소스는 REST API로 JSON 형식의 텍스트를 불러 왔을 때 사용되며

더 좋은 방법이 있다면 댓글로 남겨주시면 감사하겠습니다.


		// json 형태로 바뀔 String 변수
		String json = "{\"result\":\"fail\",\"message\":\"account error :: reservation infomation empty\"}";
		// JSONParser로 객체 생성
		JSONParser parser = new JSONParser();
		// obj 객체에 String 형식을 JSONParser형식으로 바꿔 넣는다
		Object obj = parser.parse(json);
		// JSONObject로 변환
		JSONObject jsonObj = (JSONObject) obj;
		// 아래와 같이 key 안에 있는 key를 꺼내 쓸 쑤 있다.
		JSONObject market_data = (JSONObject) jsonObj.get("market_data");

'Java > source register' 카테고리의 다른 글

HttpsURLConnection을 사용하여 API 불러오기  (0) 2018.12.12

HttpsURLConnection을 사용하여 REST API 불러오는 방법

HttpsURLConnection을 사용하여 restful api를 불러오는 소스입니다.

HttpURLConnection도 이름과 import한 라이브러리를 변경 후 아래 소스와 동일 하게 사용 가능합니다.

아래 소스는 junit test로 만들어진 테스트용 소스이며 원하지 않는 라이브러리들은 빼셔도 좋습니다.


import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.HashMap;



import javax.net.ssl.HttpsURLConnection;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.junit.Test;



public class UnitTest {

	static private String API_URL = "사용 할 API url";
        String str = "";

	@Test
	public void test() throws Exception{

		BufferedReader in = null;
		try {
			URL url = new URL(API_URL);

			// 호출할 url 

			HttpsURLConnection con = (HttpsURLConnection)url.openConnection(); 
			con.setRequestMethod("GET"); 
			in = new BufferedReader(new InputStreamReader(con.getInputStream(), "UTF-8")); 
			String line;
			while((line = in.readLine()) != null) { 

				// response를 차례대로 출력 
//				System.out.println(line); 
				str += line;

			}
		}catch (Exception e) {
			// TODO: handle exception
		}finally {
			if(in != null) try { in.close(); } catch(Exception e) { e.printStackTrace(); }
		} 

	}
}


'Java > source register' 카테고리의 다른 글

String을 JSONObject 파싱하는 방법  (0) 2018.12.13

+ Recent posts