json 解析 ---Gps坐标转百度地图坐标
来源:互联网 发布:手机上怎么装修淘宝店 编辑:程序博客网 时间:2024/05/22 15:48
在开发过程中,遇到了通过gps获取地理位置,然后需要在百度地图上显示,但是通过gps获取到的坐标跟百度地图上的坐标是有差别的,具体差异,可以去百度一下,这里就不做详细的解释,百度地图也提供了相应的转换方式,这里提供的是通过Java代码实现gps坐标转换成百度地图坐标的方法。
多了不说,看代码。
工具类
所需要的实体类
以上就是gps坐标转百度地图坐标的全部过程。
多了不说,看代码。
工具类
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL;import java.util.HashMap;import java.util.List;import java.util.Map;import com.xzw.entity.loction;import net.sf.json.JSONArray;import net.sf.json.JSONObject;public class JsonUtil {// 通过url返回json数据public static String getJsonForUrl(String URL) throws IOException {String getURL = URL;URL getUrl = new URL(getURL);HttpURLConnection connection = (HttpURLConnection) getUrl.openConnection();connection.connect();// 取得输入流,并使用Reader读取BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));StringBuffer sb = new StringBuffer();String line = "";while ((line = reader.readLine()) != null) {sb.append(line);}reader.close();String jsonString = sb.toString();// 截取json字符串connection.disconnect();return jsonString;}//通过多态构造url //坐标转换 gps 转 百度地图坐标public static String setUrl(List<loction> object){String Ak="XHDPar7ajC4hcnQZS5DPimj1";StringBuffer sb=new StringBuffer();for(loction o:object){sb=sb.append(o.getLon()+","+o.getLat()+";");}String COORDS=sb.toString().substring(0,sb.toString().length()-1);String URL="http://api.map.baidu.com/geoconv/v1/?coords="+COORDS+"&from=1&to=5&ak="+Ak;return URL;}/*//解析jsonString gps转百度坐标 (单个坐标解析)public static Map<String, String> getMapLocation(String jsonString){Map<String , String > map= new HashMap<String, String> ();String result = JSONObject.fromObject(jsonString).getString("result"); JSONArray resultJsonArray=JSONArray.fromObject(result);JSONObject reslutObject=resultJsonArray.getJSONObject(0); String x=reslutObject.getString("x"); String y=reslutObject.getString("y"); map.put("x", x); map.put("y", y);return map;}*/// 解析jsonString gps转百度坐标 批量解析public static Map<String, loction> getMapLocation(String jsonString){Map<String , loction > map= new HashMap<String, loction> ();String result = JSONObject.fromObject(jsonString).getString("result"); JSONArray resultJsonArray=JSONArray.fromObject(result); loction lo=new loction(); for(int i=0;i<resultJsonArray.size();i++ ){ JSONObject reslutObject=resultJsonArray.getJSONObject(i); String x=reslutObject.getString("x"); String y=reslutObject.getString("y"); lo.setLat(y); lo.setLon(x); map.put("loction"+i, lo);}return map;}}
测试类 测试方法
@Test//gps坐标转换成百度地图坐标public void gpsToMap() throws IOException {String lon="114.21892734521";String lat="29.575429778924";loction lo=new loction();lo.setLat(lat);lo.setLon(lon);loction lo2=new loction();lo2.setLat(lat);lo2.setLon(lon);List<loction> lolist=new ArrayList<>();lolist.add(lo);lolist.add(lo2);String url=JsonUtil.setUrl(lolist);String jsonString =JsonUtil.getJsonForUrl(url);Map<String, loction> loMap= JsonUtil.getMapLocation(jsonString);}
所需要的实体类
public class loction {private String lon;private String lat;public String getLon() {return lon;}public void setLon(String lon) {this.lon = lon;}public String getLat() {return lat;}public void setLat(String lat) {this.lat = lat;}}
以上就是gps坐标转百度地图坐标的全部过程。
0 0
- json 解析 ---Gps坐标转百度地图坐标
- gps坐标转百度地图坐标 示例
- GPS坐标转百度地图坐标
- C#GPS坐标转百度地图坐标
- 【qt】gps转百度地图坐标
- GPS坐标转百度地图坐标的方法
- 真实GPS坐标信息转百度地图坐标
- GPS坐标转百度地图坐标的方法
- GPS坐标转换为百度地图坐标
- 百度地图开发之GPS转百度坐标
- gps坐标离线转百度坐标
- GOOGLE 硬件 GPS 坐标转百度坐标
- 百度地图GPS坐标转换方法
- 照片提取GPS 转成百度地图坐标
- 百度地图API中,有GPS坐标转百度坐标的功能
- 百度地图API中,有GPS坐标转百度坐标的功能
- BMap百度地图坐标转换为GPS坐标
- 通过Java将GPS坐标转换为百度地图坐标
- 二叉树的镜像
- SpringMVC那些事-视图渲染
- 有环链表中寻找到环的起点
- Java 常见异常及趣味解释
- 第一篇博文从这里开始
- json 解析 ---Gps坐标转百度地图坐标
- 三星A7工程指令
- Python贝叶斯算法进行情感分析
- 黑马程序员_javaCode的数组和内存图解
- Ubuntu 14.04中安装Sublime Text 3并使用SublimeClang插件
- Caffe-----ProtoBuffer ,How to use protobuffer in Ubuntu
- 修改TabControl选项卡名字
- Python贝叶斯算法进行文本主客观分析(采用文本双词模型)
- 记忆的虫洞