• 解析XML


    package com.mycompany.springmybatis.service;

    import java.io.StringReader;
    import java.util.List;

    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;

    public class Test {

    public static void main(String[] args) {

    String res= "<service id="FS" comment=""><RTN_CODE>000</RTN_CODE><RTN_MSG/><CID>0.8612468373</CID><ROOT><YJXXLIST><ITEM><FPQH>08575</FPQH><FPZH>0857</FPZH><KPRQQ>2017-10-17</KPRQQ><KPRQZ>2017-10-17</KPRQZ><JE>38</JE><SE>11</SE><FS>1</FS><ZFBZ>Y</ZFBZ><JCFPDM>2100154</JCFPDM></ITEM><ITEM><FPQH>085753</FPQH><FPZH>085753</FPZH><KPRQQ>2017-10-17</KPRQQ><KPRQZ>2017-10-20</KPRQZ><JE>8155</JE><SE>244</SE><FS>5</FS><ZFBZ>N</ZFBZ><JCFPDM>2100154320</JCFPDM></ITEM></YJXXLIST></ROOT></service>";

    Document doc = dom4jXml(res);
    //String nsrmc = doc.selectSingleNode("//FPQH").getText();
    List list = doc.selectNodes("service//ITEM");
    for(int i=0;i<list.size();i++){
    Element node = (Element) list.get(i);
    String pzhdFpzlDm = node.selectSingleNode("./FPQH").getText();
    System.out.println("FPQH名称"+pzhdFpzlDm);
    System.out.println("List节点名称"+node.getName());
    }
    }
    /**
    * 解析XML
    * @param xml 待解析的xml
    * @return doc 返回解析xml后的Document对象
    */
    public static Document dom4jXml(String xml) {
    System.out.println("待解析xml:"+ xml);
    SAXReader reader = new SAXReader();
    Document doc;
    try {
    doc = reader.read(new StringReader(xml));
    return doc;
    } catch (DocumentException e) {
    System.out.println("解析xml异常:"+ e);
    e.printStackTrace();
    return null;
    }
    }


    }

    需要两个jar包 

    dom4j-1.6.1.jar
    jaxen-1.1-beta-6.jar

  • 相关阅读:
    css3新特性
    线程间通信的三种方法
    硬件相关知识
    time.h
    ldr指令总结
    你不知道的100个小秘密
    ARM学习日记
    C中位域的使用
    《编程之美》第2刷勘误
    排序2
  • 原文地址:https://www.cnblogs.com/tytr/p/8482538.html
Copyright © 2020-2023  润新知