您的位置:首页 > 其它

通过地点名得到经纬度

2011-11-21 18:23 357 查看

方法一

//

// MapHelper.m

// JiaoTong

//

// Created by MOL on 11-6-17.

// Copyright 2011 MOL. All rights reserved.

//

#import "MapHelper.h"

#import "JSON.h"

@implementation MapHelper

+ (CLLocationCoordinate2D)getPostion:(NSString *)address

{

NSString *googleURL = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?address=%@&sensor=true",

[address stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

CLLocationCoordinate2D position;

position.latitude = 0.0;

position.longitude = 0.0;

NSError *error;

NSString *retstr = [NSString stringWithContentsOfURL:[NSURL URLWithString:googleURL] encoding:NSUTF8StringEncoding error:&error];

if (retstr)

{

// NSLog(@"retstr: %@", retstr);

NSDictionary *dict = [retstr JSONValue];

if (dict)

{

NSArray *results = [dict objectForKey:@"results"];

if (results && results.count > 0)

{

NSDictionary *geometry = [[results objectAtIndex:0] objectForKey:@"geometry"];

NSDictionary *location = [geometry objectForKey:@"location"];

position.latitude = [[location objectForKey:@"lat"] doubleValue];

position.longitude = [[location objectForKey:@"lng"] doubleValue];

}

}

}

else

{

NSLog(@"error: %@", error);

}

return position;

}

@end

方法二 根据地址查经纬度

NSString*address = @"tokyo";

//查詢經緯度

NSString*output = @"csv";

NSString*key = @"YouKey";

NSString*urlStr = [NSStringstringWithFormat:@"http://maps.google.com/maps/geo?q=%@&output=%@&key=%@",address,output,key];

NSURL *url =[NSURL URLWithString:urlStr];

NSString*retstr = [NSString stringWithContentsOfURL:urlencoding:NSUTF8StringEncoding error:nil];

NSArray*resultArray = [retstr componentsSeparatedByString:@","];

doublelatitude = [[resultArray objectAtIndex:2] doubleValue];

doublelongitude = [[resultArray objectAtIndex:3] doubleValue];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐