为此
我敢肯定,这里已经问了这个问题,但我似乎找不到与我需要的东西相近的东西。我遇到了一些问题。我需要从NSDictionary
中获得一个值,然后将其放入NSArray
。
NSDictionary *dictionary = @{@"ID1":@{
@"mainPhone": @"<number>",
@"Address": @"<address>",
@"City": @"<Tulsa, OK>",
@"Date": @"1-1-2017",
@"Person1": @{
@"First": @"<FirstName>",
@"Last": @"<LastName>",
@"Phone": @"<number>",
@"Email": @"email@gmail.com",
@"Birth": @"<date>",
@"ID": @"12345",
},
@"Person2": @{
@"First": @"<FirstName>",
@"Last": @"<LastName>",
@"Phone": @"<number>",
@"Email": @"email@gmail.com",
@"Birth": @"<date>",
@"ID": @"12345",
},
@"ID2":@{
@"mainPhone": @"<number>",
@"Address": @"<address>",
@"City": @"<Tulsa, OK>",
@"Date": @"1-1-2017",
@"Person3": @{
@"First": @"<FirstName>",
@"Last": @"<LastName>",
@"Phone": @"<number>",
@"Email": @"email@gmail.com",
@"Birth": @"<date>",
@"ID": @"12345",
},
@"Person4": @{
@"First": @"<FirstName>",
@"Last": @"<LastName>",
@"Phone": @"<number>",
@"Email": @"email@gmail.com",
@"Birth": @"<date>",
@"ID": @"12345",
},
};
在上面的示例字典中,我需要在第三层字典下获取键First
并将其加载到数组中。标记为ID
和Person
的字典将分配单独的ID号,将是唯一不会静态的键。预先感谢。
for (NSString *key in dictionary) {
NSDictionary *idDic = [dictionary objectForKey:key];
for (NSString *idDicKey in idDic) {
if ([[idDic objectForKey:idDicKey] isKindOfClass:[NSDictionary class]]) {
NSString *firstName = [dictionary valueForKeyPath:[NSString stringWithFormat:@"%@.%@.First",key, idDicKey]];
NSLog(@"%@",firstName);
}
}
}