我的目标是访问xml文件并获取xml文件中的No present。 我想从我的xml访问数据,这是在本地存储,但我无法访问在xpath获取错误的值.Kindly帮助我
xml文件:
<?xml version="1.0" encoding="utf-8"?>
<Sample>
<Sample1>
<NO>257</LastPage>
</sample1>
<Sample2>
<NO>257</LastPage>
</sample2>
</Sample>
班级档案:
AssetManager manager = getAssets();
InputStream inputStream = manager.open("PageDetails.xml");
DocumentBuilderFactory builderFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder builder = builderFactory.newDocumentBuilder();
Document xmlDocument = builder.parse(inputStream);
XPath xPath = XPathFactory.newInstance().newXPath();
String expression = "/Bhajans/"+bookPath;
Node lastpageNO = (Node) xPath.evaluate(expression, xmlDocument,
XPathConstants.NODE);
Log.d("Displaying page No:","number"+lastpageNO);
错误:
06-06 12:10:04.119 30072-30072/com.com.sample.samples W/System.err﹕ javax.xml.xpath.XPathExpressionException: javax.xml.transform.TransformerException: Extra illegal tokens: '5'
06-06 12:10:04.119 30072-30072/com.com.sample.samples W/System.err﹕ at org.apache.xpath.jaxp.XPathImpl.evaluate(XPathImpl.java:295)
答案 0 :(得分:1)
您需要按照本教程的建议创建xml解析器 xml parser android
另外你可以在android文件夹结构的xml目录下创建xml文件。 xml目录将与res文件夹并行。您需要手动创建此文件。然后你可以超过R&gt; xl.yourfile或你的常数。 你粘贴的xml有语法错误。
正确的xml应该是:
<Sample>
<Sample1>
<NO>257</No>
</sample1>
<Sample2>
<NO>257</No>
</sample2>
</Sample>