Java通过百度地图API获取地址经纬度


import java.util.HashMap;
import java.util.Map;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import net.sf.json.JSONObject;

public class LngAndLatUtil {
    
    public static Map<String,Double> getLngAndLat(String address){
        Map<String,Double> map=new HashMap<String, Double>();
         String url = "http://api.map.baidu.com/geocoder/v2/?address="+address+"&output=json&ak=你自己的ak值";
            String json = loadJSON(url);
            JSONObject obj = JSONObject.fromObject(json);
            if(obj.get("status").toString().equals("0")){
                double lng=obj.getJSONObject("result").getJSONObject("location").getDouble("lng");
                double lat=obj.getJSONObject("result").getJSONObject("location").getDouble("lat");
                map.put("lng", lng);
                map.put("lat", lat);
                //System.out.println("经度:"+lng+"---纬度:"+lat);
            }else{
                //System.out.println("未找到相匹配的经纬度!");
            }
        return map;
    }
    
     public static String loadJSON (String url) {
            StringBuilder json = new StringBuilder();
            try {
                URL oracle = new URL(url);
                URLConnection yc = oracle.openConnection();
                BufferedReader in = new BufferedReader(new InputStreamReader(
                                            yc.getInputStream()));
                String inputLine = null;
                while ( (inputLine = in.readLine()) != null) {
                    json.append(inputLine);
                }
                in.close();
            } catch (MalformedURLException e) {
            } catch (IOException e) {
            }
            return json.toString();
        }

}
把代码中的ak值(红色字部分)更改为你自己的ak值,在百度地图API中注册一下就有。
调用方式:
    Map<String,Double> map=LngAndLatUtil.getLngAndLat("上海市黄浦区六合路");
    System.out.println("经度:"+map.get("lng")+"---纬度:"+map.get("lat"));


come from :http://blog.163.com/xueling1231989@126/blog/static/102640807201481814915553/

优质内容筛选与推荐>>
1、4.小程序开发组成介绍
2、【jQuery】js中一些函数写法的区别
3、java 类的关系
4、【工具类】Android获得手机信息
5、初学Unity 3D 之 CSharp


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号