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"));
}


}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值