我使用follow代码来获取XML文档(通过Java中的JDOM):
SAXBuilder builder = new SAXBuilder();
Document doc= builder.build(new URL("http://www.sasatuan.com/api/api.php"));
我得到一个例外:
org.jdom.input.JDOMParseException: Error in building:
http://www.sasatuan.com/api/api.php:1: <?xml ... ?> occurs after content. The
<?xml ... ?> prolog must be at the document start.: http://www.sasatuan.com/api/
api.php:1: <?xml ... ?> occurs after content. The <?xml ... ?> prolog must be a
t the document start.
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:473)
...
我在IE中输入了这个网址http://www.sasatuan.com/api/api.php
,没关系,但在firefox或chrome中,也是一样的错误。
这个xml标题不在文档的开头,所以jdom无法读取它。
我认为在构建之前修剪xml内容可以修改这个问题,我想知道如何做到这一点。
感谢您的帮助:)
答案 0 :(得分:1)
您是否有其他同样需要阅读的XML文件?如果没有,我会亲自尝试与网站的所有者联系。这个XML根本就是无效的 - 修复它可能是一件容易的事,这可以帮助每个人而不仅仅是你。
如果这不具吸引力,那么将内容作为字符串下载,在内存中修剪它,然后加载它可能是最容易的。你可能试图跳过输入流的相关位,但这更可能是繁琐的。