百度API

package baidu;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
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.JSONObject;

public class MapTest {
    
    public static void main(String[] args) {
        
        
        String str= "";
        //把代码中的ak值(红色字部分)更改为你自己的ak值,在百度地图API中注册一下就有。
        //调用方式:
        Map<String,Double> map=MapTest.getLngAndLat("保定哈罗城");
        
        System.out.println("经度:"+map.get("lng")+"---纬度:"+map.get("lat"));
        
    }
    public static ArrayList<String> getName(String address,String name){
        String url = "http://api.map.baidu.com/geocoder/v2/?address="+address+"&output=json&ak=SndPX8S4Gk1VTxx5Y8XegXALCGSDO2cG";
        
        String json = loadJSON(url);
        JSONObject obj = JSONObject.fromObject(json);
        if(obj.get("suggestId").toString().equals("0")){
            
        }
        return null;
    }
    
    public static Map<String,Double> getLngAndLat(String address){
        
        
        Map<String,Double> map=new HashMap<String, Double>();
         String url = "http://api.map.baidu.com/geocoder/v2/?address="+address+"&output=json&ak=SndPX8S4Gk1VTxx5Y8XegXALCGSDO2cG";
            String json = loadJSON(url);
            JSONObject obj = JSONObject.fromObject(json);
            if(obj.get("status").toString().equals("0")){
                double lng=obj.getJSONObject("result").getJSONObject("location").getDouble("lng");
                double lat=obj.getJSONObject("result").getJSONObject("location").getDouble("lat");
                
                map.put("lng", lng);
                map.put("lat", lat);
                //System.out.println("经度:"+lng+"---纬度:"+lat);
            }else{
                //System.out.println("未找到相匹配的经纬度!");
            }
        return map;
    }
    
     public static String loadJSON (String url) {
            StringBuilder json = new StringBuilder();
            try {
                URL oracle = new URL(url);
                URLConnection yc = oracle.openConnection();
                BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
                                            
                String inputLine = null;
                while ( (inputLine = in.readLine()) != null) {
                    json.append(inputLine);
                }
                in.close();
            } catch (MalformedURLException e) {
            } catch (IOException e) {
            }
            return json.toString();
        }

}

    

猜你喜欢

转载自my.oschina.net/u/3288494/blog/1501091