2012-06-05 6 views
-2

나는 Facebook 개발자가 처음 인 학생입니다. Facebook API를 사용하여 Mac OSX 응용 프로그램을 만들고 싶습니다. 내가 FQL 및 그것의 반환 날에만 다음과 같은 JSON 데이터를 요청하면 :Objective C, 각 객체를 통한 NSDictionary 루프

내 코드 :

[self.result_text setString:[NSString stringWithFormat:@"%@",[result objectForKey: @"result"]]; 

이 표시 :

[{"name":"My Name","first_name":"My First Name","last_name":"My Last Name"}] 

나는이 사전 내부의 객체를 읽고 싶어. 예 "My Name"문자열 만 표시하려고합니다. 하지만 어떻게해야할지 모르겠다. 당신은 NSDictionary 여기에 대한 설명서를 읽어야

답변

0

감사 : 섹션을 액세스 키를 제목과 당신은 변환 할 JSONKit을 사용할 수 있습니다

1

값, 특히

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/nsdictionary_Class/Reference/Reference.html

사전에 JSON 문자열 :

NSDictionary *resultsDictionary = [resultString 
     objectFromJSONStringWithParseOptions:JKParseOptionLooseUnicode|JKParseOptionValidFlags error:&err]; 

NSString* name = [resultDictionary objectForKey:@"name"]; 

JSONKit는 사용하기 간단하고 이전의 SDK 버전에서 또한 응용 프로그램 작업을 할 것입니다.

+1

오 도움이되기를 바랍니다 (예 : 아이폰 OS 4 & iOS 5). –

+0

@Michael Dautermann : 네 말이 맞아. OS에 대한 태그 만 검사하면 내 대답이 편집됩니다. – sergio

1

당신은 사자의 새로운 NSJSONSerialization class (당신을 위해 링크 된 문서)를 통해있는 NSDictionary 객체로 서버에서 JSON 내용을 구문 분석 할 수 있습니다.

NSDictionary *jsonDictionary = [NSJSONSerialization JSONObjectWithData: [self.result_text dataUsingEncoding: NSUTF8StringEncoding] options: nil error: &error]; 

그리고 당신이있는 NSDictionary 객체를 일단,이 같은 것을 할 쉽게 : 나는 너무 매우 좋은 :-) 입력하더라도, 그는 편집을 유지

NSString * myLastNameContent = [jsonDictionary objectForKey: @"last_name"]; 

세르지오의 답변을 (. 그에게 +1.

3

Ashley Mills이 쓴대로 설명서를 확인해야합니다. 할 수 있습니다이 같은 모든 사전 키를 통해 루프 :

for (NSString *key in [dictionary allKeys]) { 
    //do what you want to do with items 
    NSLog(@"%@", [dictionary objectForKey:key]); 
} 

한 가지 난 그냥 ... 원래 포스터, 맥 OS X 응용 프로그램에 대해하지 아이폰 OS를 이야기하고 눈치가

+0

NSNumber 키를 사용하여 사전을 반복 할 때도 필요합니다 (예 : [dictionary allKeys]의 NSNumber * 키) { – VagueExplanation

관련 문제