2010-05-12 6 views
4

J'aime utiliser Xpath pour analyser XML ins java, mais quand je fais la même chose sur android, XPath n'est pas trouvé.Je veux utiliser Xpath dans Android pour analyser XML

toute idée comment il peut être mis en œuvre. et aussi si ce n'est pas possible alors tout autre analyseur pour android qui est rapide?

Merci

Kai

+0

XPath partie de l'instance de l'arborescence XML qui pourrait être le résultat de ** l'analyse d'un document XML ** ou non. –

Répondre

12

Android XPath est disponible (c'est-à-dire comme une implémentation prête à l'emploi) depuis Android API niveau 8 (je pense que c'est Android 2.2), vous pouvez trouver plus d'informations here.

Pour vous aider à démarrer - dans le cadre d'un essai d'activité:

XPath xpath = XPathFactory.newInstance().newXPath(); 
String expression = "myNode"; 
NodeList nodes = (NodeList) xpath.evaluate(expression, parser, XPathConstants.NODESET); 

Le « analyseur » peut être obtenu en mettant ur document XML dans votre résolution dossier/xml (vous pourriez avoir à créer ce xml dossier vous-même). Ensuite, vous pouvez y accéder via:

//Do this withon the scope of an activity, you need the activitie's context! 
Resources res = getResources(); 
//Get the xml file 
//this is how you access the content of the xml folder 
//you previously created in the res folder 
parser = res.getXml(R.xml.yourxmlfile); 
+2

J'ai une erreur avec ceci: javax.xml.xpath.XPathExpressionException: javax.xml.transform.TransformerException: Erreur inconnue dans XPath. Mon XML: livre azerty chat azerty maison qsdfghjkl

+0

@Sebastien J'ai le même problème. Toute solution? – Lobo

+2

J'ai trouvé une explication ici http://stackoverflow.com/a/4876287/523725 – Lobo

1

Vous pouvez suivre this tutorial pour analyser un xmlFile dans Android. Il fonctionne très bien.

+0

Merci Sebi, J'ai essayé le chemin mentionné dans le lien, en fait l'utilisais mais il est très léthargique, je veux l'analyser un peu plus vite, n'y a-t-il pas d'autre moyen d'analyser? s'il vous plaît celui-ci est très urgent. Merci. – kaibuki

+0

Je pense qu'il y a d'autres façons, mais j'ai juste utilisé celui mentionné ci-dessus et je n'ai eu aucun problème avec cette solution. Donc, je ne peux pas vous aider avec d'autres solutions. Pardon. –

+0

Il semble que le lien posté dans cette réponse est mort. Vous pouvez trouver la partie Android de [ce tutoriel] (http://taivo.github.io/guides/read-config-xml-in-cordova) utile. – lastoneisbearfood

Questions connexes