2012-05-09 79 views
0

我正在嘗試使用Google地圖反向地理編碼我的位置以檢索我當前位置的街道名稱以及可能的郵政編碼。我嘗試了很多使用本地化的項目,但我認爲我的國家總是會讓它返回空(我來自新加坡)。關於反向地址解析的XML解析

使用XML,我有點不確定我想如何解析我從谷歌地圖得到的文件。

serverAddress = new URL("http://maps.google.com/maps/geo?q=" + Double.toString(loc.getLatitude()) + "," + Double.toString(loc.getLongitude()) + "&output=xml&oe=utf8&sensor=true&key=Hidden");

誰能給我在這裏的方向邁向?我應該使用文檔功能保存,然後繼續SAX解析文件?

回答

0

試試這個:

String urlStr = "http://maps.google.com/maps/geo?q=" + lat + "," + lon + "&output=json&sensor=false"; 
    String response = ""; 
    List<Address> results = new ArrayList<Address>(); 
    HttpClient client = new DefaultHttpClient(); 

    Log.d("ReverseGeocode", urlStr); 
    try { 
     HttpResponse hr = client.execute(new HttpGet(urlStr)); 
     HttpEntity entity = hr.getEntity(); 

     BufferedReader br = new BufferedReader(new InputStreamReader(entity.getContent())); 

     String buff = null; 
     while ((buff = br.readLine()) != null) 
      response += buff; 
      } catch (IOException e) { 
       e.printStackTrace(); 
     } 

爲ReverseGeocode詳見this example

+0

好,謝謝。我會試試這個。可悲的是,這個鏈接似乎是關於JSON的,直到現在我還沒有嘗試過。謝謝您的幫助! – Bocky