0
JSON 라이브러리를 사용하여 가져 오기 검색 기능에서 트위터 정보를 사용하려고합니다.
JSONArray 텍스트는 '[문자 2 행 1]에'[ '로 시작해야합니다.에서 JSONArray 또는 Java의 JSONObject로 변환
그래서 기본적으로 잘못된 형식입니다. 어떤 사람들은 이것이 객체가 될 필요가 있다고 말하고 있지만 생성자를 호출 할 때마다 String을 입력으로 사용할 수 없다고 말합니다. 이 문자열을 JSONArray의 형식으로 가져와 요소에 액세스 할 수 있도록하려면 어떻게해야합니까?
URL twitterSource = new URL("http://search.twitter.com/search.json?q=google");
ByteArrayOutputStream urlOutputStream = new ByteArrayOutputStream();
IOUtils.copy(twitterSource.openStream(), urlOutputStream);
String urlContents = urlOutputStream.toString();
// parse JSON
System.out.println(urlContents);
JSONArray jsonArray = new JSONArray(urlContents);
// use
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
System.out.println(jsonObject.getString("id"));
System.out.println(jsonObject.getString("text"));
System.out.println(jsonObject.getString("created_at"));
}
내 인쇄 문은 문자열이 포함 보여줍니다 :
{"completed_in":0.318,"max_id":144850937012428800,"max_id_str":"144850937012428800","next_page":"?page=2.....................
이는 JSON 객체의 형태로 문자열이지만 실제로 객체가 아닌
여기 내 코드입니다. 그것은 여전히 문자열입니다. 나는 문자열을 인쇄하고있다. HOw를 Object 또는 더 나은 아직 JSONArray로 가져와 실제로 요소에 액세스 할 수 있습니까?
감사합니다. JSON 객체의 요소에 어떻게 액세스 할 수 있습니까? – Randnum
당신은 어떤 물건을 언급하고 있습니까? urlContents는 문자열입니다. 어느 JSONArray() 생성자에 전달 해요. JSON 파일의 전체 문자열을 게시하지는 않았지만 원하는 콘텐츠가있는 많은 요소가있는 JSON 형식으로되어 있습니다. – Randnum
urlContents가 JSON 객체라고 말하면 어떻게 배열로 변환합니까? "새로운 JSONArray (urlContent)"는 그렇게하지 않아야합니까? – Randnum