本文實例講述了Java使用Jdom讀取xml解析。分享給大家供大家參考,具體如下:
package com.yanek.demo.xml.test;import java.io.File;import java.io.IOException;import java.util.Iterator;import java.util.List;import org.jdom.Document;import org.jdom .Element;import org.jdom.JDOMException;import org.jdom.input.SAXBuilder;public class JdomReadXml { /** * @param args */ public static void main(String[] args) { /** * <?xml version="1.0" encoding="UTF-8"?> <actions m="001"><action * path="/test"><forward * name="success" url="test.jsp" />< forward name="failure" * url="failure.jsp" /></action><action path="/user" *><forward name="success" * url="test.jsp" /><forward name ="failure" url="failure.jsp" /></action></actions> */ SAXBuilder sax = new SAXBuilder(); Document doc; try { try { doc = sax.build(new File("mystruts. xml")); Element root = doc.getRootElement(); List actions = root.getChildren(); // 遍歷獲取根節點下的一級子節點,並作為入參傳入遞歸方法for (Iterator i = actions .iterator(); i.hasNext();) { Element action = (Element) i.next(); System.out.println(action.getAttributeValue("path")); System.out.println(action.getAttributeValue ("class")); List forwards = action.getChildren(); for (Iterator j = forwards.iterator(); j.hasNext();) { Element forward = (Element) j.next(); System.out .println(forward.getAttributeValue("name")); System.out.println(forward.getAttributeValue("url")); } } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace( ); } } catch (JDOMException e) { e.printStackTrace(); } }}
輸出:
/testcom.mystruts.demo.LoginActionsuccesstest.jspfailurefailure.jsp/usercom.mystruts.demo.UserActionsuccesstest.jspfailurefailure.jsp
希望本文所述對大家Java程序設計有所幫助。