2013-03-22 15 views
0

說我有下面的NSDictionary * foo的:如何訪問此NSDictionary中的各種項目?

complete = 1; 
    list =  { 
     8213812 =   { 
      excerpt = "Lorem ipsum dolor...." 
     } 
     8810100 =   { 
      another = "iasjdiasd..." 
     ... 

我知道訪問 「完整的」 我用[響應objectForKey:@ 「完整」]但什麼人?

+1

檢索內的字典,然後訪問它。等等 – 2013-03-22 00:20:41

回答

4

你只要繼續訪問嵌套字典中的鍵,直到你得到你想要的。爲了訪問「清單」,這是勿庸置疑

[[response objectForKey:@"complete"] objectForKey:@"list"] 

以及訪問內部列表8213812式按鍵 - 嗯,這取決於它們的類型。假設他們的字符串,這將是

[[[response objectForKey:@"complete"] objectForKey:@"list"] objectForKey:@"8213812"] 

,或者使用更新,更簡潔的語法

response[@"complete"][@"list"][@"8213812"] 

但他們可能是NSNumbers或別的東西,並且如果萬一你會使用適當的NSNumber。

+0

+1爲新語法;) – HAS 2013-03-22 06:05:20

2
[[[response objectForKey:@"list"] objectForKey:@"8213812"] objectForKey:@"excerpt"] 

,或者可選地:

NSDictionary *list = [response objectForKey:@"list"]; 
NSDictionary *inner = [list objectForKey:@"8213812"]; 
NSString *excerpt = [inner objectForKey:@"excerpt"]; 

,或者可選地:

NSString *excerpt = response[@"list"][@"8213812"][@"excerpt"]; 

等。