dom4j解析xml实例(2)
生活随笔
收集整理的這篇文章主要介紹了
dom4j解析xml实例(2)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
dom4j是一個(gè)java的XML API,類似jdom,用來(lái)讀寫(xiě)XML文件,它性能優(yōu)異、功能強(qiáng)大和極易使用等特點(diǎn)
所用jar包:dom4j-1.6.1.jar、jaxen-1.1-beta-6.jar
需要解析的xml文件:people.xml
<people city="shenzhen"> <student name="milton" age="22"></student> <student name="lego" age="23"></student> <teacher name="bruce" age="27"></teacher> <teacher name="ziven" age="28"></teacher> </people>?
java代碼如下:
package demo5;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 Test01 {public static void main(String args[]) throws DocumentException {SAXReader reader = new SAXReader();Document document = reader.read(new File("D:/people.xml"));Element rootElm = document.getRootElement();//Element root1Elm = rootElm.element("city");@SuppressWarnings("rawtypes")List nodes = rootElm.elements("student");@SuppressWarnings("rawtypes")List nodess = rootElm.elements("teacher");for (@SuppressWarnings("rawtypes")Iterator it = nodes.iterator(); it.hasNext();) {Element elm = (Element) it.next();System.out.println("name:" + elm.attributeValue("name")+ " age:" + elm.attributeValue("age"));}for (@SuppressWarnings("rawtypes")Iterator it = nodess.iterator(); it.hasNext();) {Element elm = (Element) it.next();System.out.println("name:" + elm.attributeValue("name")+ " age:" + elm.attributeValue("age"));}System.out.println();try {Document doc = reader.read(new File("D:/people.xml"));@SuppressWarnings("rawtypes")List projects = doc.selectNodes("people/student");@SuppressWarnings("rawtypes")List projectss = doc.selectNodes("people/teacher");@SuppressWarnings("rawtypes")Iterator it = projects.iterator();while (it.hasNext()) {Element elm = (Element) it.next();System.out.println("name:" + elm.attributeValue("name")+ " age:" + elm.attributeValue("age"));}@SuppressWarnings("rawtypes")Iterator its = projectss.iterator();while (its.hasNext()) {Element elm = (Element) its.next();System.out.println("name:" + elm.attributeValue("name")+ " age:" + elm.attributeValue("age"));}} catch (Exception ex) {ex.printStackTrace();}}}?
代碼運(yùn)行后結(jié)果如下:
轉(zhuǎn)載于:https://www.cnblogs.com/henuyuxiang/p/3875086.html
總結(jié)
以上是生活随笔為你收集整理的dom4j解析xml实例(2)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: UVM基础之------uvm_port
- 下一篇: ###STL学习--标准模板库