无法读取android上的xml文件
问题描述:
我想打开并阅读一个XML文件作为本地资源与jdom。我可以打开文件,但后来发现错误,说明xml文件格式不正确。下面是代码:无法读取android上的xml文件
Uri path = Uri.parse("android:resource://package_name"+R.xml.data);
InputSource source = new InputSource(new StringReader(path.toString()));
document = builder.build(source);
我得到了以下错误:
org.jdom.input.JDOMParseException:Error on line 1:At line 1, column 17:not well-formed (invalid token)
这里是我的数据的XML文件:
<?xml version="1.0" encoding="utf-8"?>
<data>
<person>
<name>Name1</name>
<firstname>Firstname1</firstname>
</person>
<person>
<name>Name2</name>
<firstname>Firstname2</firstname>
</person>
</data>
你将有一个想法?提前致谢。
答
您的InputSource不读书的资源,它读取路径资源(这不是一个良好的XML文件:))
如果你要包括在Android的XML资源,这将是在编译时预分析,所以你不想用JDOM来读取它。 (如果你真的想把它读入一个DOM,把它作为原始资源)
相反,使用Resources.getXml(R.xml.data)
,如果你需要在一个DOM将返回一个XmlPullParser
,把它与原/资源,并从openRawResource()
+0
谢谢你的回答。我真的需要使用DOM。 – user1086225 2011-12-15 15:18:57
答
我不确定你是否正确地引用了该文件,因为XML文件看起来很好。我会检查您指定给文件的路径,因为R.xml.data只会返回一个int,而不是文件名。
得到您的读者为您的InputSource您的xml文件是绝对好的。 – hovanessyan 2011-12-14 17:14:10