根据百度地图API,反向获取某个位置的经纬度
来源:互联网 发布:js图片切换特效代码 编辑:程序博客网 时间:2024/04/19 15:27
package cn.ac.bcc.risk.modules.risk.utils;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;/** * 获取经纬度* * @author jueyue 返回格式:Map<String,Object> map map.put("status", * reader.nextString());//状态 map.put("result", list);//查询结果 * list<map<String,String>> * 密钥:f247cdb592eb43ebac6ccd27f796e2d2 */public class GetLatAndLngByBaidu { /** * @param addr * 查询的地址 * @return * @throws IOException */ public static Object[] getCoordinate(String addr) throws IOException { String lng = null;//经度 String lat = null;//纬度 String address = null; try { address = java.net.URLEncoder.encode(addr, "UTF-8"); }catch (UnsupportedEncodingException e1) { e1.printStackTrace(); } String key = "f247cdb592eb43ebac6ccd27f796e2d2"; String url = String .format("http://api.map.baidu.com/geocoder?address=%s&output=json&key=%s", address, key); URL myURL = null; URLConnection httpsConn = null; try { myURL = new URL(url); } catch (MalformedURLException e) { e.printStackTrace(); } InputStreamReader insr = null; BufferedReader br = null; try { httpsConn = (URLConnection) myURL.openConnection();// 不使用代理 if (httpsConn != null) { insr = new InputStreamReader( httpsConn.getInputStream(), "UTF-8"); br = new BufferedReader(insr); String data = null; int count = 1; while((data= br.readLine())!=null){ if(count==5){ lng = (String)data.subSequence(data.indexOf(":")+1, data.indexOf(","));//经度 count++; }else if(count==6){ lat = data.substring(data.indexOf(":")+1);//纬度 count++; }else{ count++; } } } } catch (IOException e) { e.printStackTrace(); } finally { if(insr!=null){ insr.close(); } if(br!=null){ br.close(); } } return new Object[]{lng,lat}; } public static void main(String[] args) throws IOException { GetLatAndLngByBaidu getLatAndLngByBaidu = new GetLatAndLngByBaidu(); Object[] o = getLatAndLngByBaidu.getCoordinate("广州"); System.out.println(o[0]);//经度 System.out.println(o[1]);//纬度 System.out.println("----------------------"); // 经度 String longitude = (String) o[0]; // 维度 String latitude = (String) o[1]; System.out.println(longitude); System.out.println(latitude); }}
原文博客的地址:
http://www.cnblogs.com/shihaiming/p/7048233.html
经测试:好使!
阅读全文
0 0
- 根据百度地图API,反向获取某个位置的经纬度
- 百度地图API根据具体地址获取经纬度
- 百度地图api--根据经纬度获取地点
- 百度地图,根据地图上任意一点的经纬度获取周边最近的POI位置信息
- java调用百度地图API根据地理位置中文获取经纬度
- java调用百度地图API根据地理位置中文获取经纬度
- 根据百度地图JSAPI查找某个地址的经纬度坐标
- java api从高德地图获取某个位置的经纬度
- 利用HTML5定位功能获取经纬度,在根据经纬度利用百度地图获取位置信息
- 百度地图的经纬度位置
- 百度地图_根据地图上标记位置获取街道信息,以及经纬度信息
- 百度地图 根据经纬度获取城市或省的名称
- iOS百度地图根据经纬度获取两点之间的距离
- 百度地图 根据地址获取经纬度
- 百度地图根据经纬度获取地址
- java根据百度地图获取经纬度
- 百度地图根据地址获取经纬度
- 百度地图 java 根据地址获取经纬度
- 如何计算出子网掩码(两种情况)
- JS红宝书·读书笔记
- Ubuntu SSH安装
- 反射加载dll 执行方法
- 2017年后半年计划
- 根据百度地图API,反向获取某个位置的经纬度
- bzoj4318 OSU!(期望概率DP,期望的线性性)
- 2017青岛网络赛1011 A Cubic number and A Cubic Number
- Jrebel 激活
- TextView英文自动换行解决方法
- 如何自学Android
- 数据库操作类型简介
- easy ui 获取当前页的某行的金额
- json返回日期类型