2011-06-01 4 views
0

J'ai un problème avec l'analyse du fichier XML sur android.Java/Android xml d'analyse causes NullPointerException

Mon look fichier examples.xml comme ceci:

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

Et mon code 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 

Il jette un NullPointerException lorsque je tente de normaliser().

Je suis inspiré par ce tutoriel simple http://sanjaal.com/java/tag/getdocumentelementnormalize/

Quelqu'un peut-il me dire ce que je fais mal? Merci

+2

la valeur de doc est très probablement nulle –

Répondre

2

Essayez de déplacer votre fichier xml dans le dossier res/raw, essayez ceci:

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

Laissez-moi savoir si cela fonctionne.

EDIT: si vous regardez http://developer.android.com/reference/android/content/res/Resources.html#openRawResource%28int%29 il indique essentiellement que vous ne pouvez l'utiliser que sur des ressources dessinables, sonores et brutes.

+0

Wow, ça marche .. Merci beaucoup – Semanticer

0

Project Try | Clean - il pourrait ne pas être obtenir le XML brut de vos ressources. Eclipse semble un peu floconneux de cette façon, je change parfois de code & il ne capte pas les changements jusqu'à ce qu'il soit nettoyé.

+0

n'a pas aidé :-( – Semanticer