<?xml version="1.0" encoding="UTF-8"?>
<root>
<tb1>
<Area>东城区 </Area>
<Area>西城区</Area>
<Area>崇文区</Area>
<Area>宣武区</Area>
<Area>朝阳区</Area>
</tb1>
<tb2>
<Area>和平区</Area>
<Area>河东区</Area>
<Area>河西区</Area>
<Area>南开区</Area>
<Area>河北区</Area>
<Area>红桥区</Area>
</tb2>
</root>
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class XMLOper {
@SuppressWarnings({ "rawtypes", "unchecked" })
public static void main(String[] args) {
SAXReader reader = new SAXReader();
File file = new File("d:\\test.xml");
try {
Document document = reader.read(file);
Element root = document.getRootElement();
Element tb1 = root.element("tb1");
List<Element> elements = tb1.elements();
for(Iterator it = elements.iterator();it.hasNext();){
Element area = (Element)it.next();
System.out.println(area.getText());
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
}
2.....................
//存放每一个节点中获取的数据
private Map map=new Map();
File f=new File("市区.xml");
//定义工厂 API,使应用程序能够从 XML 文档获取生成 DOM 对象树的解析器
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
//定义 API, 使其从 XML 文档获取 DOM 文档实例。使用此类,应用程序员可以从 XML 获取一个 Document doc。
DocumentBuilder builder=factory.newDocumentBuilder();
Document doc = builder.parse(f);
//按文档顺序返回包含在文档中且具有给定标记名称的所有 Element 的 NodeList
NodeList nl = doc.getElementsByTagName("tb1");
//遍历每一个nodelist对象
for (int i=0;i<nl.getLength();i++){
//主要为了获取节点数量
NodeList n2 = doc.getElementsByTagName("Area");
//存放一个节点中的所有数据
ArrayList<String> a=new ArrayList<String>();
for (int j=0;j<n2.getLength();j++)
{
a.add(doc.getElementsByTagName("tb1").item(j).getFirstChild().getNodeValue());
}
map.add(a);
}
}catch(Exception e){
e.printStackTrace();
}