JAVA------16.根據經緯度查詢詳細地址


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;



public class NettyDemo {
    
    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區:"+arr[2]);  
    }  
      
    public static String getAdd(String log, String lat ){  
        //lat 小  log  大  
        //參數解釋: 緯度,經度 type 001 (100代表道路,010代表POI,001代表門址,111可以同時顯示前三項)  
        String urlString = "http://gc.ditu.aliyun.com/regeocoding?l="+lat+","+log+"&type=010";  
        JSONObject salerJson=JSONObject.fromObject(getUrl(urlString));
        JSONObject jsonData=JSONObject.fromObject(salerJson);
        /* JSONArray fileItemsjson = JSONArray.fromObject(jsonData.get("addrList").toString());
      System.out.println("地區"+fileItemsjson);
        JSONObject job = fileItemsjson.getJSONObject(0);*/
        return jsonData.toString();
    }  
    
    public static String getUrl(String url)
    {
        String resData = null;
        StringBuffer s = new StringBuffer();
        BufferedReader bReader = null;
        try {
            //114.55.248.182
            URL urlWeb = new URL(url);
            URLConnection connection = urlWeb.openConnection();
            bReader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
            while (null != (resData = bReader.readLine())) {
                s.append(resData);
            }
            bReader.close();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println(s);
        return s.toString();
    }
}

 

所需jar包:鏈接:http://pan.baidu.com/s/1gfP4wEZ 密碼:znf2


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM