从资源中读取XML文件
问题描述:
我有一个需要在Android SDK中解析的XML文件。从资源中读取XML文件
如何从资源中读取XML文件路径?
XML包含:
<Book>
<Chapter>
<NO> 1 </NO>
<Text> My Lord </Text>
</Chapter>
<Chapter>
<NO> 1 </NO>
<Text> My Lord </Text>
</Chapter>
</Book>
答
把它your_project_root\res\xml\
文件夹下。然后你就可以打开它:
Resources res = activity.getResources();
XmlResourceParser xrp = res.getXml(R.xml.your_resId);
有关于如何在这里使用XmlResourceParser
一个例子:
http://android-er.blogspot.com/2010/04/read-xml-resources-in-android-using.html
答
解析XML创建你的资源内的一个文件夹,并把XML文件中在此之前。并尝试这个代码。
try {
XmlPullParser xpp=getResources().getXml(R.xml.words);
while (xpp.getEventType()!=XmlPullParser.END_DOCUMENT) {
if (xpp.getEventType()==XmlPullParser.START_TAG) {
if (xpp.getName().equals("word")) {
items.add(xpp.getAttributeValue(0));
}
}
xpp.next();
}
}
catch (Throwable t) {
Toast
.makeText(this, "Request failed: "+t.toString(), Toast.LENGTH_LONG)
.show();
}
答
如果你在你的资源的原始文件夹中的XML文件,那么你可以用下面的代码阅读:
Context context = getApplicationContext();
InputStream istream = context.getResources().openRawResource(R.raw.test);
我希望这是对你有用。
你在原始文件夹或资产文件夹中的文件在哪里? – 2011-12-29 09:05:06
我不知道如何将XML文件添加到资源中。 – Anand 2011-12-29 09:09:25
你可以把你的xml放在res/raw或assets文件夹中,然后解析它。 – 2011-12-29 09:13:53