Java / Android xml解析导致NullPointerException

时间:2011-06-01 16:25:31

标签: java android xml xml-parsing

我在android上解析XML文件时遇到问题。

我的examples.xml文件如下所示:

<categories>
    <example>something</example>
</categories>

我的Java代码:

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(getResources().openRawResource(R.xml.examples));
doc.getDocumentElement().normalize(); //here it throws NullPointerException

当我尝试规范化()时,它会抛出NullPointerException。

我受到这个简单教程http://sanjaal.com/java/tag/getdocumentelementnormalize/

的启发

谁能告诉我我做错了什么?感谢

3 个答案:

答案 0 :(得分:2)

尝试将xml文件移至res/raw文件夹,然后尝试:

Document doc = db.parse(getResources().openRawResource(R.raw.examples));

如果有效,请告诉我。

编辑:如果你看http://developer.android.com/reference/android/content/res/Resources.html#openRawResource%28int%29,它基本上说你只能在可绘制,声音和原始资源上使用它。

答案 1 :(得分:0)

尝试XmlPullParser。我认为这有点容易。

XmlPullParser | Android Developers

答案 2 :(得分:0)

尝试Project | Clean - 它可能无法从您的资源获取原始XML。 Eclipse似乎有点不稳定,我有时会更改代码和在清理之前它不会接收更改。