Java调用百度API将GPS坐标转为百度地图坐标
来源:互联网 发布:雷劈数算法 编辑:程序博客网 时间:2024/05/22 23:23
本文使用的是百度地图提供的API来进行转换:百度坐标转换API
坐标转换服务每日请求次数上限为10万次,每次最多支持100个坐标点的转换,若需更高配额,请申请开发者认证以获取更高配额和更及时技术支持。
-------------------------------------------------------------------------------------------------------
最近我申请的认证下来啦,可以提高额度至每天30万次,可在服务列表中查看自己的各项服务限制情况,如果不够还可以点击继续申请更高的配额。
-------------------------------------------------------------------------------------------------------
可能申请开发者认证后,调用的配额可能会有所提高吧。
具体的参数我就不说了,直接来事例:
import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.HttpURLConnection;import java.net.URL;import org.apache.log4j.Logger;public class AppSendUtils {private static final Logger Log = Logger.getLogger(AppSendUtils.class);public static String connectURL(String dest_url, String commString) {String rec_string = "";URL url = null;HttpURLConnection urlconn = null;OutputStream out = null;BufferedReader rd = null;try {url = new URL(dest_url);urlconn = (HttpURLConnection) url.openConnection();urlconn.setReadTimeout(1000 * 30);//urlconn.setRequestProperty("content-type", "text/html;charset=UTF-8");urlconn.setRequestMethod("POST");urlconn.setDoInput(true); urlconn.setDoOutput(true);out = urlconn.getOutputStream();out.write(commString.getBytes("UTF-8"));out.flush(); out.close();rd = new BufferedReader(new InputStreamReader(urlconn.getInputStream()));StringBuffer sb = new StringBuffer();int ch;while ((ch = rd.read()) > -1)sb.append((char) ch);rec_string = sb.toString();} catch (Exception e) {Log.error(e, e);return "";} finally {try {if (out != null) {out.close();}if (urlconn != null) {urlconn.disconnect();}if (rd != null) {rd.close();}} catch (Exception e) {Log.error(e, e);}}return rec_string;}public static void main(String[] args) {String coords = "106.6519570767,26.6245856997";String result =connectURL("http://api.map.baidu.com/geoconv/v1/?coords="+coords+"&from=1&to=5&output=json&ak=***你的ak***","");System.out.println(result);}}调用结果:{"status":0,"result":[{"x":106.66204066751,"y":26.627042409475}]}
如果你的应用不用特别精准的定位的话,没有必要转换这一次~比如你只需要定位当前城市,就没有必要转换啦。
值得注意的是在批量转换的时候,最后的";"不能要
比如这样的请求:String coords = "106.6523052200,26.6246474700;106.6524859700,26.6251858100;106.6519570767,26.6245856997;";
则会报错:{"status":24,"message":"param error:coords format error","result":[]}
把字符串中最后一个“;”去掉就OK啦。
下面来欣赏一张转换过后跟转换之前的行驶线路图:
-----------------------------------------------------------------------------------------------------------------
另外如果是Android的话,只需要集成百度计算工具的sdk就能直接调用啦:
//将GPS设备采集的原始GPS坐标转换成百度坐标 CoordinateConverter converter = new CoordinateConverter(); converter.from(CoordType.GPS);//sourceLatLng待转换坐标converter.coord(new LatLng(sysGps.getLatitude(),sysGps.getLongitude()));LatLng desLatLng = converter.convert();其中new LatLng(纬度,经度)
得到的desLatLng对象,直接点属性desLatLng.longitude,desLatLng.latitude就能得到对应的经纬度啦。
- Java调用百度API将GPS坐标转为百度地图坐标
- 通过Java将GPS坐标转换为百度地图坐标
- java调用百度地图api接口---转换非百度坐标和根据百度坐标转换地理位置
- 经由过程百度地图API,将百度坐标转换成GPS经纬度
- 通过百度地图API,将百度坐标转换成GPS经纬度
- 通过百度地图API,将百度坐标转换成GPS经纬度
- 通过百度地图API,将百度坐标转换成GPS经纬度
- gps坐标转百度地图坐标 示例
- GPS坐标转百度地图坐标
- GPS坐标转换为百度地图坐标
- C#GPS坐标转百度地图坐标
- 百度地图API中,有GPS坐标转百度坐标的功能
- PHP+百度地图API+JAVASCRIPT实现GPS坐标与百度坐标转换的实例
- 百度地图API中,有GPS坐标转百度坐标的功能
- 百度地图sdk 将GPS坐标转换为百度坐标系坐标
- 百度地图API 拾取坐标
- 百度API接口把GPS坐标转换为百度坐标
- 利用百度地图API实现gps坐标到百度坐标的批量坐标转换(如1000个点)
- 学习嵌入式开发技术高效方法总结
- 使用css设置图片背景透明,文字不透明
- Dotnet 资源
- 在DataGridView进行查询
- 软键盘弹出时将某个控件顶出,搞乱布局
- Java调用百度API将GPS坐标转为百度地图坐标
- VS2012下制作ActiveX控件并添加到网页
- 12.10
- RabbitMQ消息队列(一): Detailed Introduction 详细介绍
- Collections.empty***()的误用
- redis集群 java dmeo
- 在排好序的数组中找出缺失的整数
- 分布式锁原理及实现方式
- 关于VxWorks闲谈