原始 经纬坐标 生成 百度经纬坐标
来源:互联网 发布:厦门网络 编辑:程序博客网 时间:2024/04/26 07:33
实现 将 原始的经纬坐标变成百度经纬坐标。其实中里面就是调用了百度的api:<pre name="code" class="java">"http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x="+/*经度*/xgps+"&y="+/*纬度*/ygps;
</pre><pre name="code" class="java">/** * from: 来源坐标系 (0表示原始GPS坐标,2表示Google坐标) to: 转换后的坐标 (4就是百度自己啦,好像这个必须是4才行) x: 经度 y: 纬度 */
就这么简单
package gps2bgps;import java.io.IOException;import java.io.InputStream;import java.net.URI;import java.net.URL;import java.util.HashMap;import java.util.Map;import sun.misc.BASE64Decoder;public class ToBGps {/** * 接受两个参数,xgps用来接受原始经度,ygps用来接受原始纬度 * @param xgps * @param ygps */public static void getBGps(String xgps,String ygps){String baiduUrl = "http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x="+/*经度*/xgps+"&y="+/*纬度*/ygps;//目前两个URL来或去百度的坐标。但不知道哪一个是正确的System.out.println(baiduUrl);/** * from: 来源坐标系 (0表示原始GPS坐标,2表示Google坐标) to: 转换后的坐标 (4就是百度自己啦,好像这个必须是4才行) x: 经度 y: 纬度 *///"http://api.map.baidu.com/ag/coord/convert?x="+xgps+"&y="+ygps+"&from=0&to=2&mode=1";//http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x=113.01930956&y=22.8370871Map<String,String> map = null;try {java.net.URI uri = new URI(baiduUrl);URL url = uri.toURL();InputStream in = url.openStream();byte[] b = new byte[in.available()];in.read(b);String result = new String(b);System.out.println("------->"+result);//"error":0,"x":"MTEzLjAzMTgzMzQ5NDU5","y":"MjIuODQ5NTQ4NDI3OTQ1"String status = result.substring(result.indexOf("\"error\":")+8,result.indexOf("\"error\":")+9);String xBaseStr = result.substring(result.indexOf("\"x\":\"")+5,result.indexOf(",\"y\":\"")-1);String yBaseStr = result.substring(result.indexOf(",\"y\":\"")+6,result.indexOf("\"}"));System.out.println("x-->"+xBaseStr);System.out.println("y-->"+yBaseStr);System.out.println(status);if("0".equals(status)){map = DecoredBase64(xBaseStr,yBaseStr);}in.close();} catch (Exception e) {e.printStackTrace();} System.out.println(map);}public static Map<String,String> DecoredBase64(String x,String y){byte[] xb = null;byte[] yb = null;try {xb = new BASE64Decoder().decodeBuffer(x);yb = new BASE64Decoder().decodeBuffer(y);} catch (IOException e) {System.err.println("转码出错");}Map<String,String> bgps = new HashMap<String,String>();bgps.put("xbgps", new String(xb));bgps.put("ybgps", new String(yb));return bgps;}@org.junit.Testpublic void test() throws IOException{//Map m = ToBGps.DecoredBase64("MTEzLjAzMTEwNDAzMzEx", "MjIuODQwNTg1NDc4MjYz");//System.out.print(m);getBGps("113.02004184","22.84603575");}}
0 0
- 原始 经纬坐标 生成 百度经纬坐标
- 百度地图。跳动显示(需要经纬坐标)
- 根据经纬坐标计算距离
- gdal proj像素坐标转经纬坐标
- 原始坐标转成百度坐标
- Mapbar经纬坐标偏移的加/解密算法
- 根据两点经纬坐标计算两点间的距离[JAVA]
- 下载Google地图,瓦片数据和经纬坐标的切换
- 如何在地图上批量标注经纬坐标
- 利用php 计算两点地理经纬坐标之间的距离
- GPS坐标转换为百度坐标,百度坐标的转换,原始坐标转百度坐标
- 使用百度jssdk转换原始坐标为百度坐标
- Silverlight4下bing map实现鼠标移动时显示地图上的经纬坐标
- 根据两点经纬坐标计算两点间的距离[JAVA](转载)
- 判断一个指定的经纬坐标是否落在一个多边形区域内?
- 原始GPS坐标,火星坐标以及百度坐标的相互转换
- 百度坐标转高德坐标
- GPS设备采集的原始GPS坐标转换成百度坐标
- 高蕊万色城
- 在table中动态添加删除一行
- log4j 写入信息到文件简单举例
- iOS APP可执行文件的组成
- div 定位 样式设计
- 原始 经纬坐标 生成 百度经纬坐标
- BZOJ 1030 JSOI2007 文本生成器 AC自动机+DP
- 题库及试卷生成系统 技术总结
- CUGB14年校赛 A部落战争[深蓝]
- 想要月入10万以上??那就把它背下来!
- 随机产生单词然后判别其是否是真正的(可拼写的)单词:)
- uva10617(DP)
- InfoQ:开放物联网大会启动筹备,(前200名)免费报名参与
- linux中常用的头文件