1. 读取并解析XML文档:
SAXReader reader = new SAXReader();
Document document = reader.read(new File(fileName));
reader的read方法是重载的,可以从InputStream, File, Url等多种不同的源来读取。得到的Document对象就带表了整个XML。
读取的字符编码是按照XML文件头定义的编码来转换。如果遇到乱码问题,注意要把各处的编码名称保持一致即可。
2. 取得Root节点
Element root=document.getRootElement();
root元素是xml文档的根节点。一切XML分析都是从Root元素开始的。
3. 遍历XML树
DOM4J提供至少3种遍历节点的方法:
// 枚举所有子节点
for ( Iterator i = root.elementIterator(); i.hasNext(); ) {
Element element = (Element) i.next();
// do something
}
// 枚举名称为foo的节点
for ( Iterator i = root.elementIterator(foo); i.hasNext();) {
Element foo = (Element) i.next();
// do something
}
// 枚举属性
for ( Iterator i = root.attributeIterator(); i.hasNext(); ) {
Attribute attribute = (Attribute) i.next();
// do something
}
List<Element> elementList=root.elements(); 获得根元素下的所有子节点。
String elementName=element.getName(); 获得element节点的名字
String elementValue=element.getText(); 获得element节点的文本节点值
Attribute attribute=element.attribute(); 获得element节点的属性
String attrValue=element.attributeValue("attrValue"); 获得属性值