[英]Parse Nested objects and Array json in ios
我试图解析这样的json,其中使用许多数组和对象如何解析它。
[
{
"MusicData": [
{
"user_music_id": "199",
"music_id": "2",
"music_name": "Country"
},
{
"user_music_id": "200",
"music_id": "2",
"music_name": "Country"
}
]
},
{
"SportData": [
{
"user_sport_id": "179",
"sport_id": "4",
"sport_name": "Hockey"
}
]
},
{
"HobbyData": []
},
{
"RelationData": []
},
{
"MovieData": [
{
"user_movie_id": "144",
"movie_id": "6",
"movie_name": "Drama"
}
]
},
{
"BookData": []
},
{
"CarrerData": [
{
"user_carrer_id": "186",
"carrer_id": "7",
"carrer_name": "Marketing"
},
{
"user_carrer_id": "187",
"carrer_id": "8",
"carrer_name": "Sales"
}
]
}
]
MyMusic是一个字典,它具有包含许多索引的数组。
如何一一解析其数据? 使用标签MyMusic,SportData等。
我正在尝试使用以下代码从此json解析CarrerData:
musicTemp._id = [NSString stringWithFormat:@"%@",[[[responseDict objectAtIndex:0] valueForKey:@"MusicData"] valueForKey:@"user_music_id"]];
看来您正在跳过一个数组,请尝试:
musicTemp._id = [NSString stringWithFormat:@"%@",[[[[responseDict objectAtIndex:0] valueForKey:@"MusicData"] objectAtIndex:0] valueForKey:@"user_music_id"]];`
“ {}
”代表字典
“ []
”代表一个数组
因此,要遍历对象,您可以执行以下操作:
NSArray* array=[[responseDict objectAtIndex:0] valueForKey:@"MusicData"];
for (NSDictionary *dict in array) {
NSString *userMusicID=[dict objectForKey:@"user_music_id"];
NSString *musicID=[dict objectForKey:@"music_id"];
//etc
}
您可以对其他元素执行相同的操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.