2016-08-16 4 views
0

Android Studio 내에서 Zoho CRM API에서 가져온 데이터를 구문 분석하는 방법을 알아 내려고합니다. 나는 비교적 새로운 오전,하지만 난이 같은 JSON 응답 데이터를 분석하는 방법을 알고 :Android Studio에서 JSON을 구문 분석하는 방법

, 그것은 그 심지어 여러 하위 데이터 포인트, 안드로이드 Studio에서 문제를 분석 할 수없는 종류의 뭐 그런 아니다
{ 
     "Data": [ 
     { "subdata": "data" 
    } 
    ] 
} 

단단한.

 {"response":{"result":{"Contacts":{"row":[{"no":"1","FL": 
    [{"content":"1822766000000272057","val":"CONTACTID"}, 
{"content":"Lisa","val":"First Name"}]},{"no":"2","FL": 
[{"content":"1822766000000119148","val":"CONTACTID"}, 
{"content":"Eric","val":"First 
Name"}]}]}},"uri":"/crm/private/json/Contacts/searchRecords"}} 

사람이 안드로이드 스튜디오의 내부 같은 데이터를 구문 분석하는 방법을 알고 있나요 : 그것은 다음과 같습니다 데이터를 구문 분석에 올 때, 나는 완전한 손실입니까?

업데이트 :

enter image description here

답변

1

그냥 계층에 의해 그것을 레이어를 가지고 : 나는 a를 JSON은 JSON 뷰어에서의 모습의 사진이있다.

/** 
* Retrieves a json object from the passed in json object. 
* @param json The json object from which the returned json object will be retrieved. 
* @param key The key whose value is the json object to be returned. 
* @return A json object. 
* */ 
public static JSONObject jsonObjectFromJSONForKey(JSONObject json, String key) { 
    try { 
     return json.getJSONObject(key); 
    } 
    catch (JSONException e) { 
     return null; 
    } 
} 

당신의 변화를 만들 수 있습니다 : 그것은 그래서 클래스라는 JSONUtils 또는 뭔가를 시도-catch 블록에서 모든 것을 포장 할 필요없이 JSON을 구문 분석하는 데 도움이 같은 편리한 메소드를 사용하려면 약간의 자세한 얻을 수 있습니다 다른 데이터 유형의 경우이 작업을 수행하여 한 영역에서 try-catch 블록을 가질 수 있으며 이러한 유형의 메소드를 호출 할 때 null을 확인하십시오.

JSONObject responseJSON = JSONUtils.jsonObjectFromJSONForKey(json, "response"); 
if (responseJSON != null) { 
    JSONObject resultJSON = JSONUtils.jsonObjectFromJSONForKey(responseJSON, "result"); 
    // So on and so forth... 
} 
+0

여기에 대해 몇 가지 질문이 있습니다. 이 인스턴스에서 JSON을 구문 분석하고 싶은 URL은 어디에 넣을까요? 또한 코드 블록에서 : JSONObject responseJSON = JSONUtils.jsonObjectFromJSONForKey (json, "response"); json이 기호를 해결할 수 없다고 말하면 어떻게 수정해야합니까? 별도의 JSONUtils 클래스를 만들었습니다. –

+0

"json"은 구문 분석하려는 내용 (예 : 질문에 게시 한 json 객체)입니다. 앱에서 의미가있는 곳이면 어디든 URL을 넣을 수 있습니다. 편의를 위해 요청하는 URL의 응답을 구문 분석하기 만하면됩니다. –

+0

웹 서비스로 무엇을 사용하고 있는지 잘 모르겠지만, 예를 들어 OkHttp는 요청의 응답과 함께 콜백을 매개 변수로 사용합니다. 그런 다음 위에 게시 한 방법의 변형을 사용하여 해당 값을 구문 분석합니다. –

관련 문제