package baiDuMap; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; import java.net.URL; import java.nio.charset.Charset; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; /** * 百度接口API地址 http://lbsyun.baidu.com/index.php?title=webapi/direction-api * Direction API是一套以HTTP/HTTPS形式提供的公交、驾车、骑行、步行查询检索接口, * 返回xml或json格式的检索数据,可用于实现开发线路规划功能。 * */ public class GetStep { private static String readAll(Reader rd) throws IOException { StringBuilder sb = new StringBuilder(); int cp; while ((cp = rd.read()) != -1) { sb.append((char) cp); } return sb.toString(); } public static JSONObject readJsonFromUrl(String url) throws IOException, JSONException { InputStream is = new URL(url).openStream(); try { BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); String jsonText = readAll(rd); JSONObject json = new JSONObject(jsonText); return json; } finally { is.close(); // System.out.println("同时 从这里也能看出 即便return了,仍然会执行finally的!"); } } public static void main(String[] args) throws IOException, JSONException { // 这里调用百度的ip定位api服务 详见 // http://api.map.baidu.com/lbsapi/cloud/ip-location-api.htm // JSONObject json = readJsonFromUrl( // "http://api.map.baidu.com/location/ip?ak=F454f8a5efe5e577997931cc01de3974&ip=202.198.16.3"); JSONObject json = readJsonFromUrl( "http://api.map.baidu.com/direction/v1?mode=walking&origin=南京交院地铁站&destination=软件大道地铁站&origin_region=南京&destination_region=南京&output=json&ak=your ak。。。。"); // System.out.println(json.toString()); JSONArray arr = json.getJSONObject("result").getJSONArray("routes").getJSONObject(0).getJSONArray("steps"); StringBuilder sb = new StringBuilder(); for(int i=0;i替换 //replaceAll(regex, replacement)支持正则表达式替换 a = a.replace("", "").replace("b", "").replace("/", ""); System.out.println(a); } }
java编写连接地图规划路线_百度地图接口,根据起点和终点做路径规划
最新推荐文章于 2022-09-18 16:59:39 发布