Ios 如何解析JSON响应
这是我的json响应:Ios 如何解析JSON响应,ios,objective-c,json,Ios,Objective C,Json,这是我的json响应: { "wk_time":{ "user":{ "id":11, "name":"geetha adhi" }, "startday":"2015-08-09", "status":"New", "total":38.23, "time_entries":[ { "id":246,
{
"wk_time":{
"user":{
"id":11,
"name":"geetha adhi"
},
"startday":"2015-08-09",
"status":"New",
"total":38.23,
"time_entries":[
{
"id":246,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":8,
"name":"Design"
},
"hours":7.0,
"comments":"test",
"spent_on":"2015-08-09",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
},
{
"id":287,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":8,
"name":"Design"
},
"hours":5.0,
"comments":"test",
"spent_on":"2015-08-10",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
},
{
"id":288,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":8,
"name":"Design"
},
"hours":5.0,
"comments":"test",
"spent_on":"2015-08-11",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
},
{
"id":289,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":8,
"name":"Design"
},
"hours":5.0,
"comments":"test",
"spent_on":"2015-08-12",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
},
{
"id":291,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":8,
"name":"Design"
},
"hours":5.0,
"comments":"test",
"spent_on":"2015-08-14",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
},
{
"id":292,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":8,
"name":"Design"
},
"hours":5.0,
"comments":"test",
"spent_on":"2015-08-15",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
},
{
"id":492,
"project":{
"id":4,
"name":"Vitals"
},
"issue":{
"id":22
},
"user":{
"id":11,
"name":"geetha adhi"
},
"activity":{
"id":9,
"name":"Development"
},
"hours":6.23,
"comments":"ttest",
"spent_on":"2015-08-09",
"custom_fields":[
{
"id":9,
"name":"Test"
},
{
"id":10,
"name":"test2"
}
]
}
]
}
}
我的代码:
NSURLRequest * urlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:response url]];
NSError * error = nil;
NSURLResponse * response = nil;
NSData * jsonSource = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error];
NSLog(@" %@",jsonSource);
id jsonObjects = [NSJSONSerialization JSONObjectWithData: jsonSource options:NSJSONReadingMutableContainers error:nil];
if ([jsonObjects objectForKey:@"wk_time"] != [NSNull null]) {
NSArray *itemArray = [jsonObjects objectForKey:@"wk_time"];
NSLog(@" %@",itemArray);
}
到目前为止,我已经做了很多。我希望获得项目名称、活动名称。如何获取此信息?NSDictionary*jsonDict=[NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableContainers error:&err];
NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:responseData options: NSJSONReadingMutableContainers error: &err];
NSDictionary *dictUser = [[jsonDict objectForKey:@"wk_time"]objectForKey:@"user"];
NSArray *array = [[jsonDict objectForKey:@"wk_time"]objectAtIndex:0];
for(int i=0;i<[array count];i++)
{
NSDictionary *dictTimeEntries = [[array objectAtIndex:i]objectForKey:@"time_entries"];
NSDictionary *dictProject = [dictTimeEntries objectForKey:@"project"];
NSString *stringProjectName = [NSString stringWithFormat:@"%@",[dictProject valueForKey@"name"]];
NSLog(@"The stringProjectName is - %@",stringProjectName);
NSString *stingProjectID = [NSString stringWithFormat:@"%@",[dictProject valueForKey@"id"]];
NSLog(@"The stringProjectID is - %@",stingProjectID);
NSDictionary *dictActivity = [dictTimeEntries objectForKey:@"activity"];
NSString *stringActivityName = [NSString stringWithFormat:@"%@",[dictActivity valueForKey@"name"]];
NSLog(@"The stringActivityName is - %@",stringActivityName);
NSString *stingActivityID = [NSString stringWithFormat:@"%@",[dictActivity valueForKey@"id"]];
NSLog(@"The stingActivityID is - %@",stingActivityID);
}
NSDictionary*dictUser=[[jsonDict objectForKey:@“工作时间”]objectForKey:@“用户”];
NSArray*数组=[[jsonDict objectForKey:@“工作时间”]objectAtIndex:0];
对于(int i=0;i,我强烈建议您将JSON结果转换为object。这是一个非常有用且易于启动的库-
通过这种方式,您可以创建一个表示响应的类,并轻松访问所有属性,如普通属性,即user.name
[[DictJsonName objectForKey:@“wk_time”]objectForKey:@“time_entries”]objectAtIndex:changeNumber]objectForKey:@“project”]objectForKey:@“name”][[[[[DictJsonName objectForKey:@“工作时间”]objectForKey:@“时间项”]objectAtIndex:changeNumber]objectForKey:@“活动”]objectForKey:@“名称”]catherine告诉我你使用该url获得回复的url。请告诉我,如果你给我显示获取回复的url,我现在会帮助你。@user3182143是的,谢谢你的回复,url在我的本地运行…你怎么能使用该url?有什么想法吗…@RamVinayYadav tahnks bro.它工作正常…是的,谢谢兄弟…你能给我你的邮件id吗。…我将发送我的示例项目我有一些疑问…你能澄清我吗…你想要我的个人身份证吗?你为什么取消勾选我的答案?你能给我你的身份证吗?兄弟?告诉我你的邮件身份证。我会发短信给你。