由于DOM技术的解析,存在很多缺陷,比如内存溢出,解析速度慢等问题,所以就出现了DOM4J解析技术,DOM4J技术的出现大大改进了DOM解析技术的缺陷。
使用DOM4J技术解析XML文件的步骤?
public static void dom4jXml()throws Exception{
//第一步:获得一个解析器
SAXReader saxreader = new SAXReader();
//第二步:指定解析的XML文件
Document document=saxreader.read(new File("src/myclass.xml"));
//如果想对XML文件进行具体的操作,则可以调用下面的方法
//1.遍历该XML文件
dom4jList(document.getRootElement()); //传入根元素获取名称和文本内容并判断是否存在子元素并获取信息
}
public static void dom4jList(Element element){ //遍历XML文件
//获取文件中父元素的名称和文本内容
System.out.println(element.getName()+element.getTextTrim());
//创建迭代器对象判断该父元素是否还有子元素,有的话,就获取子元素的名称和文本内容
Iterator iterator = element.elementIterator();
while(iterator.hasNext()){
Element e = (Element) iterator.next();
//递归调用自身方法判断该子元素是否还存在子元素,以此类推并获取信息
dom4jList(e);
}
}