這篇文章將為大家詳細講解有關(guān)利用java怎么樣實現(xiàn)根據(jù)經(jīng)緯度獲取地址,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
java 根據(jù)經(jīng)緯度獲取地址實現(xiàn)代碼
實現(xiàn)代碼:
public class GetLocation { public static void main(String[] args) { // lat 39.97646 //log 116.3039 String add = getAdd("116.3039", "39.97646"); JSONObject jsonObject = JSONObject.fromObject(add); JSONArray jsonArray = JSONArray.fromObject(jsonObject.getString("addrList")); JSONObject j_2 = JSONObject.fromObject(jsonArray.get(0)); String allAdd = j_2.getString("admName"); String arr[] = allAdd.split(","); System.out.println("?。?+arr[0]+"\n市:"+arr[1]+"\n區(qū):"+arr[2]); } public static String getAdd(String log, String lat ){ //lat 小 log 大 //參數(shù)解釋: 緯度,經(jīng)度 type 001 (100代表道路,010代表POI,001代表門址,111可以同時顯示前三項) String urlString = "http://gc.ditu.aliyun.com/regeocoding?l="+lat+","+log+"&type=010"; String res = ""; try { URL url = new URL(urlString); java.net.HttpURLConnection conn = (java.net.HttpURLConnection)url.openConnection(); conn.setDoOutput(true); conn.setRequestMethod("POST"); java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(conn.getInputStream(),"UTF-8")); String line; while ((line = in.readLine()) != null) { res += line+"\n"; } in.close(); } catch (Exception e) { System.out.println("error in wapaction,and e is " + e.getMessage()); } System.out.println(res); return res; } }