2012-01-08 2 views

답변

1

문자열이 JSON 객체의 배열 인 경우 SBJsonParser 메서드 objectWithString:을 사용하면 NSDictionary 객체의 NSArray를 반환 할 수 있습니다. 그런 다음 배열을 반복하고 배열의 각 요소에서 사용자 정의 객체를 만들 수 있습니다. 각 값을 추출하려면 NSDictionary 메서드 objectForKey:을 사용하십시오.

SBJsonParser *json = [[SBJsonParser new] autorelease]; 
NSError *jsonError = nil; 
NSArray *parsedJSON = [json objectWithString:response error:&jsonError];    

// this example just creates a custom object from the first element in the array 
NSDictionary dictionary = [parsedJSON objectAtIndex:0]   
CustomObject *myCustomObject = [[CustomObject alloc] init]; 
myCustomObject.firstname = [dictionary objectForKey:@"firstname"]; 
myCustomObject.lastname = [dictionary objectForKey:@"lastname"]; 
+0

고마워, 너무 간단 해! 그래서 테이블을 반복하기 위해, 나는 for 루프에 코드를 놓고 0을 i로 변경하기 만하면됩니까? –

+0

네, 맞습니다. – jonkroll

+0

감사합니다. 나는 테이블의 첫 번째 행을 위해 노력하고 있지만 문제가 있습니다. 'NSLog (@ "EVENT NAME : % @", [dictionaryObjectForKey : @ "eventName"]);'를 실행하면 돌아옵니다 (null). 비동기 적으로 요청을 받고 있으므로 데이터를 가져올 시간이 없다고 생각했습니다. 이것을 동기식으로 변경하면 응용 프로그램이'[__NSCFDictionary objectAtIndex :] : 인식 할 수없는 선택기가 인스턴스 0x6b1f8b0 '에 전송되어 충돌합니다. 어떤 아이디어? –

관련 문제