2011-12-22 2 views
2

iOS 5를 사용하면 기본 json 지원을 사용할 수 있습니다. 나는 많은 것들을 시도하지만 난 다음 구문 분석하지 못할 : http://api.audioboo.fm/users/40956/audio_clips.jsoniOS 5 json - json 문자열로 더 깊이 들어가시겠습니까?

내 목표는 등등 모든 audio_clip 또한 아이디의과를 얻는 것입니다. 내가 간단한 JSON 문자열을 시도했다

은 다음과 같습니다

 NSDictionary* json = [NSJSONSerialization 
         JSONObjectWithData:responseData //1 

         options:kNilOptions 
         error:&error]; 


    latestBoo = [json objectForKey:@"audio_clips"]; 

하지만 난이 정보를 얻는 방법을 잘 모릅니다 복잡한 JSON 문자열로

.

당신의 JSON의 루트 턴에 audio_clips를 포함하는 body를 포함

+1

약간의 설명을하는 데 도움을 " 복잡한 JSON 문자열 "이 아니라"복잡한 JSON 객체 "라고합니다. 다양한 온라인 서비스를 사용하여 더 읽기 쉽게 볼 수 있습니다. – Cyrille

답변

2
NSDictionary *parsedData = [NSJSONSerialization 
        JSONObjectWithData:responseData //1 

        options:kNilOptions 
        error:&error]; 

// Response Data is the JSON String... 

NSLog(@"Parsed Data: %@", parsedData); 

NSDictionary *bodyDictionary = [parsedData valueForKey:@"body"]; 

NSLog(@"bodyDictionary: %@", bodyDictionary); 

NSArray *audioClipsArray = [bodyDictionary valueForKey:@"audio_clips"]; 

NSLog(@"Response array: %@", audioClipsArray); 

오디오 클립의 모든 요소가 포함 된 배열입니다.

+0

thx 완벽하게 작동! 내 하루를 저장 :) – H3rrVorr4g3nd

0

답변 : 대한 희망. 따라서해야 할 일

NSArray *audioClips = [(NSDictionary *)[json objectForKey:@"body"] objectForKey:@"audio_clips"]; 

그런 다음 audioClips 배열을 반복 할 수 있습니다.

0

이 정보를 내가 당신에게 아이폰 OS 코드를 제공 할 수는 없지만, 따라서 자바 스타일의 의사 코드는 액세스 할 : 그건 아니다,

// serialize string into json object 
JSONObject json = serialize(responseData); 


// request member "body" as json object 
JSONObject body = json.getAsJsonObject("body"); 

// request member "audio_clips" as json array 
JSONArray audio_clips = body.getAsJsonArray("audio_clips"); 

// iterate over json array 
for(JSONObject audio_clip : audio_clips) { 
    // access members of audio_clip, e.g. id 
    int id = audio_clip.getInt("id"); 
} 

희망이
-axel

+0

JSON 개체의 구조를 분석하려면 JSON 편집기를 사용하는 것이 좋습니다 ... 거기에 충분히 사용할 수있는 간단한 온라인 도구는 http://braincast.nl/samples/jsoneditor입니다./ – AxelTheGerman

+0

Java 코드는 iOS 프로그래머에게는 그다지 도움이되지 않습니다. –

+0

글쎄, 나는이 두 언어가 매우 다르다는 것을 알고있다. 하지만 자바 특정 코드 조각/라이브러리 호출을 포함하지 않기 때문에 JSON 객체를 다루는 방법을 이해하는 데 도움이 될 수 있습니다. 또한 모든 OO 프로그래머는 이러한 종류의 의사 코드를 읽을 수 있어야합니다. – AxelTheGerman