我想在Android中使用Xpath来解析XML

kai*_*uki 4 xml xpath parsing android

我喜欢使用Xpath来解析XML in java,但是当我在android上做同样的事情时,找不到XPath.

任何想法如何实施.并且如果它不可能然后任何其他解析器为Android快速?

谢谢

Rea*_*oid 11

从Android API Level 8(我认为是Android 2.2)开始,Android XPath可用(即作为即用型实现),您可以在此处找到更多信息.

为了帮助您入门 - 在活动范围内尝试:

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

可以通过将ur xml文档放入res/xml文件夹来获取"解析器"(您可能必须自己创建该xml文件夹).然后你可以通过以下方式访问它

//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);
Run Code Online (Sandbox Code Playgroud)

  • 我有一个错误:javax.xml.xpath.XPathExpressionException:javax.xml.transform.TransformerException:XPath中的未知错误.我的XML:<keywords> <keyword> <word> book </ word> <definition> azerty </ definition> </ keyword> <keyword> <word> cat </ word> <definition> qwerty </ definition> </ keyword> <keyword> <word> house </ word> <definition> qsdfghjkl </ definition> </ keyword> </ keywords> (2认同)