public class DomTest {@Test
public void demo1() {
// F:\\book.xml
Document document = getDocument("F:\\book.xml");// 获得要读文件的路径
Element element = document.getRootElement();// 获得文件的根节点
for (Iterator i = element.elementIterator(); i.hasNext();) {// 遍历是都有下一个子节点
Element element1 = (Element) i.next();
if (element1.getName().equals("书")) {// 如果有是否和书的名字是一样
System.out.println(element1.getName());// 有得话输出内容
for (Iterator j = element1.elementIterator(); j.hasNext();) {// 遍历书下面是否还有子节点
Element node = (Element) j.next();
if ("书名".equals(node.getName())) {// 如果有是否和书名一样
System.out.println(node.getText());// 打印内容
} else if ("作者".equals(node.getName())) {// 是否还有其他的子节点的名字和作者一样
System.out.println(node.getText());// 打印内容
} else if ("售价".equals(node.getName())) {
System.out.println(node.getText());
}
}
}
}
}
private Document getDocument(String c) {
SAXReader read = new SAXReader();// 创建一个SaxReader解析器读取文件
Document doc = null;// 初始化
try {
doc = (Document) read.read(new File(c));// 读取book.xml文件
} catch (DocumentException e) {
e.printStackTrace();
}
return doc;
}
}