2016-10-18 8 views
0

을 변환합니다. 콘솔 표시 :구문 분석 JSON 안드로이드는 내가 <a href="https://proxyepn-test.epnbn.net/wsapi/epn" rel="nofollow">https://proxyepn-test.epnbn.net/wsapi/epn</a></p> <p>이후 JSON을 얻을하지만 하나의 데이터 예 : "이름"을 표시 할 때 JSON 에 문제가 된 JSONObject

로그인

org.json.JSONException: No value for Name 
org.json.JSONException: Value status at 0 of the type java.lang.String can not be converted to JSONObject 

은 당신이 나를 도와 드릴까요? 감사합니다. . 아래 시도

String test2 = test.execute(restURL).get().toString(); 
     Log.i("result",test2); 
JSONObject obj = new JSONObject(test2); 
     String data = obj.getString("data"); 
     Log.i("testjson",data); 
     String pageName = obj.getJSONObject("data").getString("Name"); 
     Log.i("testjsondata",pageName); 
    } catch (InterruptedException e) { 
     e.printStackTrace(); 
    } catch (ExecutionException e) { 
     e.printStackTrace(); 
    } catch (JSONException e) { 
     e.printStackTrace(); 
    } 

답변

0

: 여기

내 코드입니다

JSONObject obj = new JSONObject(test2); 
JSONObject data = obj.getJSONObject("data"); 
Iterator<String> iterator = data.keys(); 
while(iterator.hasNext()){ 
     String key = iterator.next(); 
     String Name = data.getString(key); 
} 
+0

그렇지

는 귀하의 회신을 지금 각 내 JSON 을 차단할 수 있습니다 주셔서 감사합니다하지만 당신은 "이름" 들으 같은 범주에 데이터 만 가지고 어떻게 할 –

0
JSONObject obj = new JSONObject(test2); 
JSONObject data=obj.getJSONobject("data"); 
JSONObject ob1=obj.getJSONobject("1"); 
String pageName = ob1.getString("Name"); 
0

을 당신으로 분류 된 JSONObject의 다음 수준 (구문 분석해야 "1", "2", " 3 ".. 응답에서).

당신이 공유 한 Json 응답 구조에 문제가있는 것처럼 보입니다. 왜 그것이 "데이터"안에 배열 될 수 없습니까?

그러면 해당 객체를 ("1", "2", "3"..) 배열 항목으로 사용하여 JSONArray로 데이터를 쉽게 읽을 수 있습니다.

Android JSON parsing of multiple JSONObjects inside JSONObject