我正在使用flickr,在样本取回中我得到这个:
{
"api_key" = {
"_content" = 3c6eeeae4711a5f478d3da796750e06b;
};
format = {
"_content" = json;
};
method = {
"_content" = "flickr.test.echo";
};
nojsoncallback = {
"_content" = 1;
};
stat = ok;
}
这是一个包含5个条目的字典(api_key, format, method, nojsoncallback &统计)。前4个部分本身就是字典。
首先,在我的原始字典中有第5个元素,它不是字典,它只是原始字典中的最后一个条目(stat=ok)。此外,我希望每个子条目中的_content键出现在我的单个单元格中,但我不想硬编码任何值。我是否有设置数组?
NSDictionary
有一个漂亮的小方法叫做valueForKeyPath
。他是你的救世主。
[dict valueForKeyPath:@"api_key._content"]
[dict valueForKeyPath:@"format._content"]
[dict valueForKeyPath:@"method._content"]
[dict valueForKeyPath:@"nojsoncallback._content"]
它所做的是遍历键路径并获取每个JSON子结构中content
的值。否则,您将不得不编写一个for-loop
并遍历它。整洁的啊?
试试这个
for (NSString *key in dictionary){
id object = dictionary[key];
if ([object isKindOfClass:[NSDictionary class]]) {
//Now you can work on the dictionary object
}
}