2013-01-16 36 views
1

我能夠從JSON文件創建一個NSDictionary沒問題,我需要知道的是如何做嵌套的JSON字符串?請參閱示例:NSDictionaries和嵌套的JSON

{ 
"data": [ 
    { 
    "id": "270639882984792_306265986160413", 
    "from": { 
     "category": "Non-profit organization", 
     "name": "My Facebook Page", 
     "id": "270639882984792" 
    }, 

因此,這是一個巨大的JSON文件的一部分,但我怎麼設置它,這樣我可以從所謂的「姓名」鍵「從」關鍵 - 我知道該怎麼稱呼「數據」鍵中的「id」鍵,但我想要的是更深層次的。

在此先感謝:-)

編輯 - 這裏是我開始工作的一些iOS的代碼:

NSDictionary *items = [json objectForKey:@"data"]; 

NSArray *items2 = [items objectForKey:@"from"]; 
// NSDictionary *item = [items objectAtIndex:1]; 

NSMutableArray *story = [NSMutableArray array]; 

for (NSDictionary *item in items2) 
{ 

    if([item objectForKey:@"name"] || [item objectForKey:@"name"] != nil || [[item objectForKey:@"name"] length]>0){ 
     [story addObject:[item objectForKey:@"name"]]; 
    } 

    NSLog(@"ITEM - %@", [item objectForKey:@"name"]); 

} 
+0

剝洋蔥,一次一步。一旦你明白你在做什麼,你可以使用諸如valueForKeyPath之類的東西,但最好先「longhand」。 –

回答

2

試試這個:

NSDictionary* data= json[@"data"]; 
NSDictionary* from= [data[0] objectForKey: @"from"]; 
NSString* name= from[@"name"]; 

如果你只是想你的名字'很好,如果你需要所有的數據,我建議創建一個能夠爲每個字典條目保存一個值的對象。您可以像使用不同的鍵一樣訪問「id」和「category」。

+0

該應用程序崩潰,它給了我這個錯誤: - [__ NSCFArray objectForKey:]:無法識別的選擇器發送到實例 –

+0

對不起,我沒有看到該數據是一個數組,編輯。 –

+0

是json [@「data」]; [json objectForKey:@「data」]的簡寫; ?對不起,還沒有看到它的方式呢 –