4
JSON格式嵌入式陣列我有一個名爲array
詞典:如何處理在Objective-C的
{
"encoding": "320",
"format": "MP3",
"media": "CD",
"name": "foo",
"remaster_title": ""
},
{
"encoding": "V0 (VBR)",
"format": "MP3",
"media": "CD",
"name": "bar",
"remaster_title": ""
},
{
"encoding": "Lossless",
"format": "FLAC",
"media": "CD",
"name": "bar",
"remaster_title": "hoho"
}
我想,讓自己獨特的分離這些。例如,應該只有一個name
,所以會有兩個部分:foo
和bar
。
然後,每個name
(foo
或bar
)內,應該有一個remaster_title
(對於foo
:和
bar
二者:和
hoho
)....
這應該是在順序:name > remaster_title > media > format > encoding
。
我想,如果我能有類似的格式,這會工作:所以所有的鍵,然後將合併
music[name][remaster_title][media][format] = encoding
?
我曾嘗試:
+(NSMutableDictionary*)handleReturnedArtistJson:(NSDictionary*)json{
NSMutableDictionary *music = [[NSMutableDictionary alloc] init];
for(NSDictionary *result in json[@"response"][@"group"]) {
NSString* release_type = result[@"releaseType"];
NSString* name = result[@"groupName"];
if (![release_type isEqual: @"Compilation"]){
for (NSDictionary *subgroup in result[@"subgroup"]){
NSString* media = subgroup[@"media"];
NSString* remaster_title = subgroup[@"remasterTitle"];
NSString* format = subgroup[@"format"];
NSString* encoding = subgroup[@"encoding"];
music[name][remaster_title][media][format] = encoding;
}
}
}
return music;
}
但NSLog(@"%@",music);
回報什麼。
我不明白你爲什麼希望所有嵌套的字典,爲什麼不只是像'{名稱:{remastered_title1:{ 「編碼」:......」格式「:...,」media「:...},remasted_title2:{...}},name2:...}'? –
正如Tadhg所說,你是否有理由在多嵌套字典中使用它?數據是否可以以嵌套格式傳遞給您的應用程序,如果可以的話,您可以使用Mantle,我可以提供一個例子,如果這就是您想要的。 – JingJingTao
我只是想能夠遍歷每個數組中的每個數組:)我對結構非常困惑! – maxisme