java 实现地址到经纬度坐标的转化

来源:互联网 发布:摇杆软件 编辑:程序博客网 时间:2024/06/15 18:48

思路是:通过传入地址作为参数拼接url调用百度地图,然后解析返回的页面,提取经纬度坐标

以下为具体步骤

  1.  public void getPoint(String address){  
  2.          try {    
  3.                 String sCurrentLine;    
  4.                 String sTotalString;    
  5.                 sCurrentLine = "";    
  6.                 sTotalString = "";    
  7.                 java.io.InputStream l_urlStream;    
  8.                   
  9.                 java.net.URL l_url = new java.net.URL("http://api.map.baidu.com/geocoder/v2/?address="+address.replaceAll(" """)+"&output=json&ak=702632E1add3d4953d0f105f27c294b9&callback=showLocation");    
  10.                 java.net.HttpURLConnection l_connection = (java.net.HttpURLConnection) l_url.openConnection();    
  11.                 l_connection.connect();    
  12.                 l_urlStream = l_connection.getInputStream();    
  13.                 java.io.BufferedReader l_reader = new java.io.BufferedReader(new java.io.InputStreamReader(l_urlStream));     
  14.                 String str=l_reader.readLine();  
  15.                 //用经度分割返回的网页代码  
  16.                 String s=","+"\""+"lat"+"\""+":";  
  17.                 String strs[]=str.split(s, 2);  
  18.                 String s1="\""+"lng"+"\""+":";  
  19.                String a[]=strs[0].split(s1, 2); 
  20.                lng坐标(a[1]);  //纬度  
  21.                s1="}"+","+"\"";  
  22.               String a1[]=strs[1].split(s1, 2);  
  23.                lat坐标(a1[0]);  经度  
  24.             } catch (Exception e) {    
  25.                 e.printStackTrace();    
  26.             }    
  27.           
  28.     }  

阅读全文
1 0