xpath无法读取xml

xpath无法读取xml

package testdemo1;


import java.util.List;


import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.Element;

import org.dom4j.Node;

import org.dom4j.io.SAXReader;


public class xPathXml {

public void testXPathXml(String xPathStr) {

String file="d:/eclipse-workspace/xmlTest/src/plan.xml";

SAXReader sax = new SAXReader();

try {

Document dm = sax.read(file);

List<Node> nodes = dm.selectNodes(xPathStr);

System.out.println(nodes.size());

for(Node node : nodes) {

Element course = (Element)node;

System.out.print(course.attributeValue("id"));

System.out.print(course.elementText("course-name"));

System.out.print(course.elementText("class-hour"));

System.out.print(course.elementText("exam-form"));

}

} catch (Exception e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

// TODO Auto-generated method stub

xPathXml xpathxml = new xPathXml();

xpathxml.testXPathXml("//scoure");

// xpathxml.testXPathXml("//scoure[class-hour<50]");

// xpathxml.testXPathXml("//scoure[course-name='高等数学']");

// xpathxml.testXPathXml("//scoure[@id='001']");

// xpathxml.testXPathXml("//scoure[position<3]");

}

}

------------------------------------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>

<teaching-plan>

<course id="001">

<course-name>大学英语</course-name>

<class-hour>36</class-hour>

<exam-form>考试</exam-form>

</course>

<course id="002">

<course-name>高等数学</course-name>

<class-hour>70</class-hour>

<exam-form>考试</exam-form>

</course>

<course id="003">

<course-name>计算机应用基础</course-name>

<class-hour>108</class-hour>

<exam-form>上机考试</exam-form>

</course>

</teaching-plan>


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕阿满 2019-01-17 16:59:09

同学你好,在xml中,节点名称为course,如:

http://img1.sycdn.imooc.com//climg/5c4043a60001a0ac04100192.jpg

而在xPathXml读取时,读取的节点名称为:scoure。如:

http://img1.sycdn.imooc.com//climg/5c4044050001334705760322.jpg

节点名称不对,所以无法读取到xml中的节点。同学修改一下节点名称再试试。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
从网页搭建入门Java Web2018版
  • 参与学习           人
  • 提交作业       1088    份
  • 解答问题       10204    个

如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师