java调用百度地图API根据地理位置中文获取经纬度

版权声明:本文为博主原创文章,转载注明出处http://blog.csdn.net/u013142781

百度地图api提供了很多地图相关的免费接口,有利于地理位置相关的开发,百度地图api首页:http://developer.baidu.com/map/

博主使用过根据地理根据地理位置中文获取经纬度的api,下面提供Java调用百度api接口的代码,详情可参考百度地图api相关说明:http://developer.baidu.com/map/index.php?title=webapi/guide/webservice-geocoding。更多功能待读者挖掘啦。

public Map<String, BigDecimal> getLatAndLngByAddress(String addr){
        String address = "";
        String lat = "";
        String lng = "";
        try {
            address = java.net.URLEncoder.encode(addr,"UTF-8");
        } catch (UnsupportedEncodingException e1) {
            e1.printStackTrace();
        }
        String url = String.format("http://api.map.baidu.com/geocoder/v2/?"
        +"ak=4rcKAZKG9OIl0wDkICSLx8BA&output=json&address=%s",address);
        URL myURL = null;
        URLConnection httpsConn = null;
        //进行转码
        try {
            myURL = new URL(url);
        } catch (MalformedURLException e) {

        }
        try {
            httpsConn = (URLConnection) myURL.openConnection();
            if (httpsConn != null) {
                InputStreamReader insr = new InputStreamReader(
                        httpsConn.getInputStream(), "UTF-8");
                BufferedReader br = new BufferedReader(insr);
                String data = null;
                if ((data = br.readLine()) != null) {
                    lat = data.substring(data.indexOf("\"lat\":")
                    + ("\"lat\":").length(), data.indexOf("},\"precise\""));
                    lng = data.substring(data.indexOf("\"lng\":")
                    + ("\"lng\":").length(), data.indexOf(",\"lat\""));
                }
                insr.close();
            }
        } catch (IOException e) {

        }
        Map<String, BigDecimal> map = new HashMap<String, BigDecimal>();
        map.put("lat", new BigDecimal(lat));
        map.put("lng", new BigDecimal(lng));
        return map;
}
时间: 2024-11-03 09:06:03

java调用百度地图API根据地理位置中文获取经纬度的相关文章

百度地图api-使用代理服务器调用百度地图API

问题描述 使用代理服务器调用百度地图API private static String ak = ""5ef2641d89438a6e708db122820cf1d2""; public static Map testPost(String x String y) throws IOException { URL url = new URL(""http://api.map.baidu.com/geocoder?"" + ak

java调用百度地图定位

问题描述 java调用百度地图定位 电脑端怎么实现定位当前位置的.获取坐标等信息: . 解决方案 电脑端无法定位吧!只能根据IP所在的城市 来确定城市 手机是根据GPRS发送的信号来定位的!电脑端没有这类型装置,无法实现! 解决方案二: java调用百度地图和谷歌地图 解决方案三: 可以查看下,百度地图有没有三方的api提供 解决方案四: 百度,淘宝都有免费的定位接口,去网上搜一下就出来了.

api-如何调用百度地图API编写多个经纬度点之间的距离矩阵

问题描述 如何调用百度地图API编写多个经纬度点之间的距离矩阵 调用百度地图API,计算出已知经纬度的地址之间的实际距离,然后计算多个这样的地址之间的距离矩阵 解决方案 http://tieba.baidu.com/p/2105274396 解决方案二: 我记得百度有的,在导航那个里面有的

如何调用百度地图API实现手机自动定位_Android

最近由于项目需要,研究了下百度地图定位,他们提供的实例基本都是用监听器实现自动定位的.我想实现一种效果:当用户进入UI时,不定位,用户需要定位的时候,自己手动点击按钮,再去定位当前位置.经过2天研究和咨询,找到了解决方案,在此备忘一下. //声明地址解析器 var geoc = new BMap.Geocoder(); //自动定位 var autoLocation = function () { if (navigator.geolocation) { //判断浏览器是否能获取当前位置 nav

sea.js调用百度地图api

问题描述 请问有没有用过sea.js调用百度地图api的? 解决方案 解决方案二:具体什么问题?

【c#】Form调用百度地图api攻略及常见问题

           首先,在Form中调用百度地图api,我们需要使用webbrowser控件,这个在前面的文章中已经讲过了,可以参照(http://blog.csdn.net/buptgshengod/article/details/9617177).         那么接下来就是一些关联性的操作.首先我建议把web的文件放到vs中来进行修改(文件本身以及用到的资源都要存到bin/debug中).如图,这样统一操作更容易实现. 几个关键的问题在这要提一下: 问题一:webbrowser和f

Android 调用百度地图API示例

Android 调用百度地图API 一.到 百度地图开发平台下载SDK http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download 1.点击自定义下载 2.下载自己想要的功能包我这里选了三个 3.获取密钥 获取密钥之前我们要新建一个应用 填写好相关的信息 二. 新建一个项目工程 1. 把下载好的百度sdk中的jar包拷贝到项目的libs目录下 2.在application中添加开发密钥 3.添加所需的权限 <uses-

javascript使用百度地图api和html5特性获取浏览器位置

 本文介绍了javascript使用百度地图api和html5特性获取浏览器位置的小功能,大家参考使用吧 代码如下: <!DOCTYPE html> <html> <body> <p id="demo">点击这个按钮,获得您的位置:</p> <button onclick="getLocation()">试一下</button> <script src="http:/

java调用百度地图-java项目应用百度地图

问题描述 java项目应用百度地图 车辆可以显示在百度地图,也就是说现在可以定位了,但是我怎样去做他的历史轨迹?有谁知道的话给个demo看看参考一下 解决方案 哥们 可以给看看你怎么定位的么 想学学这不知道该怎么调用百度地图