JAVA地址通过百度地图API转化为经纬度
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | public static Map getLngAndLat(String address) { Map map = new HashMap(); String url = "http://api.map.baidu.com/geocoder/v2/?address=" + address + "&output=json&ak=你的ak" ; //这里需要自己申请百度ak try { 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" , getDecimal(lng)); map.put( "lat" , getDecimal(lat)); //System.out.println("经度:"+lng+"---纬度:"+lat); } else { map.put( "error" , "未找到相匹配的经纬度!" ); System.out.println( "未找到相匹配的经纬度!" ); } } catch (Exception e) { map.put( "error" , "未找到相匹配的经纬度,请检查地址" ); System.out.println( "未找到相匹配的经纬度!请检查地址" ); } return map; } public static double getDecimal( double num) { if (Double.isNaN(num)) { return 0 ; } BigDecimal bd = new BigDecimal(num); num = bd.setScale( 6 , BigDecimal.ROUND_HALF_UP).doubleValue(); return num; } 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(), "UTF-8" )); String inputLine = null ; while ((inputLine = in.readLine()) != null ) { json.append(inputLine); } in.close(); } catch (MalformedURLException e) { } catch (IOException e) { } return json.toString(); } |
-----------------------有任何问题可以在评论区评论,也可以私信我,我看到的话会进行回复,欢迎大家指教------------------------
(蓝奏云官网有些地址失效了,需要把请求地址lanzous改成lanzoux才可以)
分类:
JAVA
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了