zoukankan      html  css  js  c++  java
  • 解析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

  • 相关阅读:
    简单聊聊智能硬件的固件测试
    Regular进阶: 跨组件通信
    项目组建和磨合阶段常见的坑
    从需求到数据到改进,如何形成闭环
    请不要怪罪流程
    自备干货!如何有效的做竞品迭代分析
    css小点心
    java的collection集合
    java中的数组与集合相互转换
    java-增强for循环
  • 原文地址:https://www.cnblogs.com/tytr/p/8482538.html
Copyright © 2011-2022 走看看