Android的解析与SAXParser的一个xml [英] Android parsing an xml with saxparser
本文介绍了Android的解析与SAXParser的一个xml的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图解析在Android上的XML文件withSaxParser。
I am trying to parse an xml file withSaxParser on Android.
这是我的xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<cars>
<car model="CitroenC3">
<maintenances>
<xm:maintenance xmlns:xm="it.a.b.android.c.car.m" distance="" price="">
<xm:type></xm:type>
</xm:maintenance>
</maintenances>
<chargings>
<xc:charging xmlns:xc="it.a.b.c.fuelconsumption.car.m" quantity="18" price="20" distance="400" consumption="14"/>
</chargings>
</car>
</cars>
这是code:
And this is the code:
// Handling XML
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
XmlResourceParser parser = getResources().getXml(R.xml.data);
// Create handler to handle XML Tags ( extends DefaultHandler )
DataSaxHandler myXMLHandler = new DataSaxHandler();
xr.setContentHandler(myXMLHandler);
InputStream is= getResources().openRawResource(R.xml.data);
xr.parse(new InputSource(is));
xr.parse后,我有例外:
After xr.parse I have the Exception:
03-22 15:24:04.248:信息/的System.out(415):XML帕兴Excpetion =
03-22 15:24:04.248: INFO/System.out(415): XML Pasing Excpetion =
org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: not well-formed (invalid token)
这可能是错的? 非常感谢。
What may be wrong? Thanks a lot.
推荐答案
AFAIR,任何XML在 RES /
文件夹中的文件之前,它被放置在apk文件进行编译。
试试你的XML文件移动到资产/
文件夹,并从那里加载它:
AFAIR, any xml file under res/
folder is compiled before it's placed in .apk.
Try to move your XML-file to assets/
folder and load it from there:
xr.parse(new InputSource(getAssets().open("data.xml")));
这篇关于Android的解析与SAXParser的一个xml的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文