天天看點

DOM4J解析XML執行個體

用前要先加 dom4j.jar包

第一次接觸XML檔案解析  通過查資料做了出來   希望能幫上忙  哪裡寫的不好的話歡迎提出

XML檔案:

<? xml version="1.0" encoding="UTF-8" ?> - < checkstyle version =" 5.7 " > - < file name =" D:\app2\jenkins\jobs\Build_Ime_Branch\workspace\branch\FlyIME_Base\src\com\iflytek\inputmethod\newui\control\impl\AbsInputModeManager.java " >   < author author =" zfxu " />   < revision revision =" 1571 " />   < error line =" 246 " column =" -1 " severity =" warning " message =" Line is longer than 150 characters (found 164). " source =" com.puppycrawl.tools.checkstyle.checks.sizes.LineLengthCheck " />   < date date =" 2014-03-31T08:08:14.333285Z " />   </ file >   </ checkstyle >

JAVA源代碼:

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.util.Iterator;

import java.util.List;

import javax.xml.soap.SOAPHeader;

import org.dom4j.Document;

import org.dom4j.DocumentHelper;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

import org.dom4j.Attribute;

public class ZFXU {

public static void main(String args[]) throws Exception {

// 讀取檔案

SAXReader reader = new SAXReader();

Document document = reader.read(new File("F:\\zfxu.xml"));

Element root = document.getRootElement();

// 開始周遊

System.out.println(" version = " + root.attributeValue("version"));

List<Element> elementFile = root.elements();

// 先周遊name之類

for (Element f : elementFile) {

System.out.println("name = " + f.attributeValue("name"));

Element author = f.element("author");

System.out.println("author = " + author.attributeValue("author"));

Element revision = f.element("revision");

System.out.println("revision = " + revision.attributeValue("revision"));

// 周遊error裡的屬性

List<Element> error = f.elements();

for (Element e : error) {

if (e.attributeValue("line") != null) {    //循環輸出可能會出現null 要判斷

System.out.println("line = " + e.attributeValue("line"));

}

if ((e.attributeValue("column") != null)) {

System.out

.println("column = " + e.attributeValue("column"));

}

//

if ((e.attributeValue("severity") != null)) {

System.out.println("severity = "

+ e.attributeValue("severity"));

}

if (e.attributeValue("message") != null) {

System.out.println("message = "

+ e.attributeValue("message"));

}

//

if (e.attributeValue("source") != null) {

System.out

.println("source = " + e.attributeValue("source"));

}

}

Element date = f.element("date");

System.out.println("date = " + date.attributeValue("date"));

}

}

}