student.xml
<?xml version="1.0" encoding="GBK"?> <students> <student> <name>吴飞</name> <college>java学院</college> <telephone>62354666</telephone> <notes>男,1982年生,硕士,现就读于北京邮电大学</notes> </student> <student> <name>李雪</name> <college>C++学院</college> <telephone>62358888</telephone> <notes>男,1987年生,硕士,现就读于中国农业大学</notes> </student> <student> <name>Jack</name> <college>PHP学院</college> <telephone>66666666</telephone> <notes>我是澳洲人</notes> </student> <student> <name>Lucy</name> <college>Android学院</college> <telephone>88888888</telephone> <notes>我是美国人</notes> </student> </students>
package edu.aeon.xml; import java.util.Iterator; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; /** * [说明]:dom4j解析student.xml文件中的所有内容 * 需要jar包:dom4j-1.6.1.jar * @author aeon(qq:1584875179) */ public class Dom4jXMLParser { public static void main(String[] args) { try { //创建解析器 SAXReader saxReader=new SAXReader(); //通过解析器将指定的路径的xml读取到内存中并且解析为一个document对象 Document document=saxReader.read("config/student.xml"); //获取该document对象的根节点 Element rootElement=document.getRootElement(); //迭代获取根节点里面的所有元素 for(Iterator<Element> rootElementIt=rootElement.elementIterator();rootElementIt.hasNext();){ //获得根节点的下一个元素 Element studentEle=rootElementIt.next(); for(Iterator<Element> studentEleIt=studentEle.elementIterator();studentEleIt.hasNext();){ Element studentContext = studentEleIt.next(); String studentContextValue=studentContext.getStringValue(); System.out.println(studentContext.getName()+":"+studentContextValue); } System.out.println("==================================="); } } catch (DocumentException e) { e.printStackTrace(); } } }
结果截图: