我是Facebook Developer的新手。我想使用Facebook API创建Mac OSX应用程序。当我请求FQL时,它只返回JSON数据,如下所示:
我的代码:
[self.result_text setString:[NSString stringWithFormat:@"%@",[result objectForKey: @"result"]];
显示:
[{"name":"My Name","first_name":"My First Name","last_name":"My Last Name"}]
我想阅读这个词典中的对象。示例我只想显示“我的名字”字符串。但我不知道怎么做。
谢谢,
答案 0 :(得分:3)
正如Ashley Mills所写,你应该查看文档。您可以循环遍历所有字典键,如下所示:
for ( NSString *key in [dictionary allKeys]) {
//do what you want to do with items
NSLog(@"%@", [dictionary objectForKey:key]);
}
希望有所帮助
答案 1 :(得分:1)
您可以使用JSONKit将JSON字符串转换为字典:
NSDictionary *resultsDictionary = [resultString
objectFromJSONStringWithParseOptions:JKParseOptionLooseUnicode|JKParseOptionValidFlags error:&err];
NSString* name = [resultDictionary objectForKey:@"name"];
JSONKit易于使用,并且可以使您的应用程序也适用于较旧的SDK版本。
答案 2 :(得分:1)
您可以通过Lion的全新NSJSONSerialization class(为您链接的文档)将服务器中的JSON内容解析为NSDictionary对象。
e.g。
NSDictionary *jsonDictionary = [NSJSONSerialization JSONObjectWithData: [self.result_text dataUsingEncoding: NSUTF8StringEncoding] options: nil error: &error];
一旦你在NSDictionary对象中拥有它,就很容易做到这样的事情:
NSString * myLastNameContent = [jsonDictionary objectForKey: @"last_name"];
塞尔吉奥的回答(他一直在编辑,即使我输入:-)也非常好。 +1给他。
答案 3 :(得分:0)
您应该在此处阅读NSDictionary
的文档:
特别是标题为访问键和值
的部分