Iphone 获取nsdictionary中特定键的值

Iphone 获取nsdictionary中特定键的值,iphone,ios,objective-c,nsdictionary,Iphone,Ios,Objective C,Nsdictionary,我将json解析结果保存在字典中,如下所示: { "statusCode":"200", "body":[ { "status":"success", "remarks":null } ], "data":[ "abcd":[ { "category":"a", "title":"b", "id":"24" }, { "

我将
json
解析结果保存在
字典中,如下所示:

{
 "statusCode":"200",
"body":[
  {
     "status":"success",
     "remarks":null
  }
],

"data":[
     "abcd":[
        {
           "category":"a",
           "title":"b",
           "id":"24"
        },
        {
           "category":"c",
           "title":"crd",
           "id":"65"
        },
        {
           "category":"ds",
           "title":"sd",
           "id":"18"
        }

     ]
  },
  {
     "efgh":[
        {
           "category":"ds",
           "title":"sd",
           "id":"18"
        },
        {
           "category":"sd",
           "title":"sd",
           "id":"1"
        }

                             ]
  },
  {
     "ijkl":[
        {
           "category":"ds",
           "title":"sd",
           "id":"18"
        },
        {
           "category":"sd",
           "title":"sd",
           "id":"1"
        }

     ]
  }
 ]
}
键@“data”的数据可以通过使用保存到数组中

NSMutableArray *getdata=[[NSMutableArray alloc]init];
getcat=[results objectForKey:@"data"];
现在,我应该如何处理第一个索引中的
值(类别、标题、id)
,即
“abcd”

如果有人有任何知识,请看看

感谢大家。

检查如下:

NSString *value=[[[getcate valueForKey:@"abcd"] objectAtIndex:0] valueForKey:@"category"];

这是一个数组,因此使用
objectAtIndex:
(即
[getcat objectAtIndex:0]
getcat[0]

以下内容将为您提供所需的对象

NSDictionary *dict=[results valueForKeyPath:@"data.abcd"][0];
个人:

NSString *categoryString=[[results valueForKeyPath:@"data.abcd"][0] objectForKey:@"Category"];
NSString *idString=[[results valueForKeyPath:@"data.abcd"][0] objectForKey:@"id"];
NSString *titleString=[[results valueForKeyPath:@"data.abcd"][0] objectForKey:@"title"];
而且


是的,我已经做了。。NSMutableArray*firstarray=[getcat objectAtIndex:0];“abcd”:[{“类别”:“a”,“标题”:“b”,“id”:“24”},{“类别”:“c”,“标题”:“crd”,“id”:“65”},{“类别”:“ds”,“标题”:“sd”,“id”:“18”}]但是现在,如何在abcd中获取值,即类别、标题、ID,这是另一个字典。我不明白为什么这会给这么多人带来这么多麻烦。您在这一行中已经做了完全相同的事情->
getcat=[results objectForKey:@“data”]所以再做一次。JSON不是火箭科学。您只能得到大约5或6种不同的类型,并且只有两种集合类型。所以集合可以是数组(按数字获取)或字典(按字符串获取)。我无法获取字典中的值,如我的答案所示,即category、id、title.nslog dict,并告诉打印的内容。我通过NSString*cat=[dict valueForKeyPath:@“id”][0]获取了内部键值;它意味着获取特定密钥的所有id,例如,我必须用于循环的“abcd”下的所有id。如何从数据中获取“abcd”密钥名?因为我想将“abcd”显示为我的tableview部分标题。在我的例子中,“abcd”和“efgh”是动态的。
NSString *categoryString=dict[@"Category"];
NSString *idString=dict[@"id"];
NSString *titleString=dict[@"title"];