在我的Android应用程序中,我想从互联网上检索XML文件,并将该文件中的一些标签解析为我的应用程序。我得到了一个使用XMLResourceParser的工作教程here,但该教程指出了如何从本地目录中读取XML文件。
将外部XML文件检索到我的Android应用程序的方法调用是什么?
XmlResourceParser xrp = this.getResources().getXml(R.xml.test);
答案 0 :(得分:3)
您可以使用以下代码获取XML文件的InputStream:
URL url = new URL(urlString);
URLConnection connection = url.openConnection();
HttpURLConnection httpConn = (HttpURLConnection)connection;
httpConn.setDoInput(true);
httpConn.setRequestProperty("charset", "utf-8");
int responseCode = httpConn.getResponseCode();
if(responseCode != HttpStatus.SC_OK) {
InputStream xmlStream = httpConn.getInputStream();
// Pass the xmlStream object to a XPP, SAX or DOM parser.
}
答案 1 :(得分:2)
在“res”中创建一个新文件夹“raw”,将外部xml放入原始文件夹
InputStream inputStream = getResources().openRawResource(R.raw.yourXMLname);
答案 2 :(得分:2)
如果“外部XML文件”是指从互联网上加载XML文件,请查看this article on HelloAndroid,了解如何将URL下载到您的设备。
就实际的XML解析而言,我发现SJXP“Simple Java XML Parser”是最简单的解决方案。它重量轻,易于使用,并使用回调处理程序。该网站还有一些非常有用的示例代码。 http://www.thebuzzmedia.com/software/simple-java-xml-parser-sjxp/