如何从JSON输出数据解码路由点?
我是新的在ios
领域,现在我试图实现基于MKMapView
的iPhone应用程序。 从Google Map Web Web服务获取JSON
输出格式的数据。
- (void)update { self.responseData=[NSMutableData data]; NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://maps.googleapis.com/maps/api/directions/json?origin=Ernakulam&destination=Kanyakumari&mode=driving&sensor=false"]]; [[NSURLConnection alloc] initWithRequest:request delegate:self]; } -(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{ [self.responseData setLength:0]; } -(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{ [self.responseData appendData:data]; } -(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error{ [connection release]; self.responseData =nil; } -(void)connectionDidFinishLoading:(NSURLConnection *)connection{ NSLog(@"connection established"); [connection release]; NSString *responseString=[[NSString alloc]initWithData:self.responseData encoding:NSUTF8StringEncoding]; self.responseData=nil; NSLog(@" OUTPUT JSON DATA^^^^^^^^^^^^^^^^%@",responseString); }
我拿出了JSON
格式。 现在我想在这两个位置之间画出路线。 播种如何分离所有的经纬度点从JSON
出数据。
看看这个代码。 我正在使用JSONkitparsing
-(void)connectionDidFinishLoading:(NSURLConnection *)connection{ NSLog(@"connection established"); [connection release]; NSString *responseString=[[NSString alloc]initWithData:responseData encoding:NSUTF8StringEncoding]; NSMutableDictionary *data1 = [responseData objectFromJSONData]; NSMutableArray *ad = [data1 objectForKey:@"routes"]; NSMutableArray *data2 = [[ad objectAtIndex:0] objectForKey:@"legs"]; NSMutableArray *data3 = [[data2 objectAtIndex:0] objectForKey:@"steps"]; // NSLog(@"Data3 %@", data3); for(int i = 0; i<data3.count;i++){ NSLog(@"Start %@", [[data3 objectAtIndex:i] objectForKey:@"start_location"]); NSLog(@"End %@", [[data3 objectAtIndex:i] objectForKey:@"end_location"]); } }
我正在使用SBJsonparsingJSON数据。 一般来说,调用[responseString JSONValue]
来获得parsing的数据。 你可以谷歌它的详细参考。