Dom4j解析XML文件
import java.io.File;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class Dom4JResolveXML {
public static void readStringXml(File filename) {
SAXReader saxReader = new SAXReader();
Document doc = null;
try {
doc = saxReader.read(filename);
Element rootElt = doc.getRootElement();
System.out.println("根节点:" + rootElt.getName());
Iterator iter = rootElt.elementIterator("CountryRegion");
while (iter.hasNext()) {
Element recordEle = (Element) iter.next();
String name = recordEle.attributeValue("Name");
String code = recordEle.attributeValue("Code");
System.out.println("Name:" + name);
System.out.println("Code:" + code);
Iterator iters = recordEle.elementIterator("State");
while (iters.hasNext()) {
Element itemEle = (Element) iters.next();
String stateName = itemEle.attributeValue("Name"); // 拿到head下的子节点script下的字节点username的值
String stateCode = itemEle.attributeValue("Code");
System.out.println("Name:" + stateName);
System.out.println("Code:" + stateCode);
Iterator iterator = itemEle.elementIterator("City");
while (iterator.hasNext()){
Element iteratorEle = (Element) iterator.next();
String cityName = iteratorEle.attributeValue("Name");
String cityCode = iteratorEle.attributeValue("Code");
System.out.println("Name:" + cityName);
System.out.println("Code:" + cityCode);
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String args[]){
Dom4JResolveXML dom4jResolveXML = new Dom4JResolveXML();
dom4jResolveXML.readStringXml(new File("D:\\test\\LocList.xml"));
}
}
PS:xml文件内容为:
<?xml version="1.0" encoding="utf-8"?>
<Location>
<CountryRegion Name="中国" Code="1">
<State Name="北京" Code="11">
<City Name="东城" Code="1"/>
<City Name="房山" Code="11"/>
</State>
<State Name="上海" Code="12">
<City Name="徐汇" Code="10"/>
<City Name="浦东" Code="15"/>
</State>
</CountryRegion>
</Location>
浙公网安备 33010602011771号