因此,我坐在这里与Google Geocoder一起,后者通过’GOOGLE_URL / xml?address = input&sensor = false’返回XML。我需要使用Java来获取它,并将其解析为JSON对象并继续发送。
我将如何去做?(不,这不是家庭作业)请注意,最好在标准库中完成。目前,我正在尝试确定是否可以使用例如SAX来完成。
这是一个工作示例,显示了如何连接到URL,下载XML并将其转换为JSON格式:
连接到URL并以字符串形式下载XML:
String str = "http://maps.google.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true";
URL url = new URL(str); InputStream is = url.openStream(); int ptr = 0; StringBuilder builder = new StringBuilder(); while ((ptr = is.read()) != -1) { builder.append((char) ptr); } String xml = builder.toString();
从此处下载JSON库。(您必须对其进行编译,并确保这些类位于您的类路径中。)
将XML转换为JSON对象:
JSONObject jsonObject = XML.toJSONObject(xml);
System.out.println(jsonObject);