他们的api文档说如果返回类型是一个xml,只需输入“r =”和返回文件类型.
我已经测试了一些请求.其中一个:
Jsoup.connect(http://www.omdbAPI.com/?i=tt1285016&r=xml).get();
在浏览器上测试工作正常.但在androID没有.抛出任何异常.如果我不插入返回文件类型,则返回JsON.在这种情况下,我收到数据.
确保问题是否与xml文件有关.我用musicbrainz API测试了.默认情况下,它返回XML.我的惊喜很好.
问题是什么? Jsoup的开放电影数据库的返回类型?
解决方法 Jsoup的主要重点是处理HTML,并确保返回的文档是格式良好的HTML.因此,默认情况下,它始终将输入视为HTML并将文档规范化.这就是为什么你得到像< HTML>< head>< / head> …< xml> …< / HTML>这样的DOM.如果您知道您提供的输入实际上是XML,则可以将Jsoup配置为在XML模式下进行解析.在这种情况下,它不会规范化为HTML DOM,也不会强制执行任何HTML规范.
举个例子:
String url = "http://www.omdbAPI.com/?i=tt1285016&r=xml";document doc = Jsoup.connect(url) .parser(Parser.xmlParser()) .get();System.out.println(doc);
使用和不使用Parser.xmlParser()配置比较该输出:
在XML模式下:
<?xml version="1.0" enCoding="UTF-8"?><root response="True"> <movIE title="The Social Network" year="2010" {snip} /></root>
在HTML模式下:
<!--?xml version="1.0" enCoding="UTF-8"?--><HTML> <head></head> <body> <root response="True"> <movIE title="The Social Network" {snip} /> </root> </body></HTML>总结
以上是内存溢出为你收集整理的android – Jsoup无法读取xml返回文件全部内容,希望文章能够帮你解决android – Jsoup无法读取xml返回文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)