关于反向地理编码的XML解析

时间:2012-05-09 09:29:01

标签: android xml eclipse sax reverse-geocoding

我正在尝试使用谷歌地图反转地理编码我的位置,以检索我当前位置的街道名称和邮政编码。我尝试了许多使用当地的项目,但我认为我的国家总是让它返回null(我来自新加坡)。

使用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");

任何人都可以给我一个指导方向吗?我应该使用Document功能保存,然后继续使用SAX来解析文件吗?

1 个答案:

答案 0 :(得分: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