昨天学了个用 List 列表来解析 xml 文件,今天换了另一种方法:使用 Iterator 迭代器来解析。
和使用 List 类似,首先引入:
import java.io.File;
import java.util.Iterator;import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
然后注意对异常的处理:
public static void main(String[] args) throws Exception {}
初始化相关变量:
SAXReader reader = new SAXReader();
Document document = reader.read(new File("books.xml"));
Element root = document.getRootElement();Iterator it = root.elementIterator();
再通过循环来遍历整个树:
while (it.hasNext()) {Iterator attrIt = element.attributeIterator();while (attrIt.hasNext()) {Attribute a = (Attribute) attrIt.next();System.out.println(a.getName() + ": " + a.getValue());}Iterator eleIt = element.elementIterator();while (eleIt.hasNext()) {Element e = (Element) eleIt.next();System.out.println(e.getName() + ": " + e.getText());}
}
xml 文件结构参考昨天的 Java 解析 xml 文件 - List 。