您的位置:首页 > 编程语言 > Java开发

Java 后台 google地图通过经纬度寻找地址

2014-02-24 11:04 316 查看
源代码:

/**
* 根据经纬度获取地址
* @param longitude
* @param latitude
* @return
*/
public static  String getGoogleAddressBylatlng(double latitude, double longitude){

//socket.bind();
String result = "";
String addr="";
try {
URL U = new URL("http://ditu.google.com/maps/api/geocode/json?latlng="+latitude+","+longitude+"&language=zh-CN&sensor=false");
URLConnection connection = U.openConnection();
InputStream ins=connection.getInputStream();

BufferedReader in = new BufferedReader(new InputStreamReader(ins,"UTF-8"));

String line;
while ((line = in.readLine())!= null){

result += new String(line)+"\n";
}
JSONObject object=JSONObject.fromObject(result);
Object results=object.get("results");

JSONArray json= JSONArray.fromObject(results);

Object obj[]= json.toArray();
JSONObject obj1=null;
if(obj.length>0){
obj1=JSONObject.fromObject(obj[0]);
addr=(String)obj1.get("formatted_address");
}else{
addr="未知地址";
}

} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return addr;
}


关键代码:

地址 http://ditu.google.com/maps/api/geocode/json?latlng=31.232,120.21&language=zh-CN&sensor=false
返回的是json格式数据,将上面地址中的json改为xml,将返回xml格式数据

导入关键包:

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: