我很难从Google Directions请求中获取的JSON文件中提取我需要的单个值。
发送请求后,我得到类似的内容:
{
"routes" : [
{
"bounds" : {
"northeast" : {
"lat" : 31.831330,
"lng" : 34.834710
},
"southwest" : {
"lat" : 31.25299000000001,
"lng" : 34.653460
}
},
"copyrights" : "Map data ©2012 Mapa GISrael",
"legs" : [
{
"distance" : {
"text" : "85.6 km",
"value" : 85613",
},
但我唯一想要的是距离值(路线/腿/距离/值), 有没有人知道如何从JSON文件中提取这个值?
答案 0 :(得分:1)
首先,这似乎没有格式化的JSON,有一个试验“在距离的值之后。
大多数JSON框架都会以最合适的类型为您提供对象。字典将转换为NSDictionary,列表将转换为NSArray。
要获取上述JSON中的路由距离,您可以使用众多库中的一个将JSON解析为NSDictionary,然后您将执行以下操作:
NSNumber * distance = [[[[[[parsedDict objectForKey:@“routes”] objectAtIndex:0] objectForKey:@“legs”] objectAtIndex:0] objectForKey:@“distance”] objectForKey @“value”];
看看是否有效。