在 Java 中将外部 XML 解析为 JSON?

2023-11-30

所以我坐在这里使用 Google Geocoder,它通过“GOOGLE_URL/xml?address=input&sensor=false”返回 XML。 我需要使用 Java 获取它并将其解析为 JSON 对象并继续发送。

我该怎么做呢? (不,这不是作业) 请注意,最好应该在标准库内完成。目前我正在尝试弄清楚是否可以使用 SAX 等来完成。


下面是一个工作示例,展示了如何连接到 URL、下载 XML 并将其转换为 JSON 格式:

  1. 连接到 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();
    
  2. 从下载 JSON 库here。 (您必须编译它并确保这些类位于您的类路径中。)

  3. 将 XML 转换为 JSON 对象:

    JSONObject jsonObject = XML.toJSONObject(xml);
    System.out.println(jsonObject);
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Java 中将外部 XML 解析为 JSON? 的相关文章

随机推荐