zoukankan      html  css  js  c++  java
  • Java解析xml字符串(dom4j、jdom)

    1.dom4j解析xml字符串

     需要jar包dom4j-1.6.1.jar

    package com.example.xmlresovler;
    import java.util.HashMap;
    import java.util.Map;
    import org.dom4j.Document;
    import org.dom4j.DocumentHelper;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
    public class Demo4jXmlResovlerDao {
    /**
    * demo4j解析xml
    */
    public static Map xmlResovlerDao(String xml) {
    Map map=new HashMap();
    SAXReader saxReader=new SAXReader();
    Document doc=null;
    try {
    //字符串转xml
    doc=DocumentHelper.parseText(xml);
    //获取根节点
    Element rootElt = doc.getRootElement(); // 获取根节点
    //打印根节点名字
    System.out.println("根节点名字:"+rootElt.getName());
    //获取根节点下的所有子节点
    //<?xml version="1.0" encoding="UTF-8"?>
    //<root>
    //<returnCode>922609</returnCode>
    //<message>会员创建成功</message>
    //</root>
    String returnCode=rootElt.elementTextTrim("returnCode");
    String message=rootElt.elementTextTrim("message");
    map.put("returnCode", returnCode);
    map.put("message", message);
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } // 将字符串转为XML
    return map;
    }
    }
    2.JDOM解析xml字符串

     需要导入jar包jdom-1.1.3.jar

    package com.example.xmlresovler;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.StringReader;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    import org.jdom.Document;
    import org.jdom.Element;
    import org.jdom.JDOMException;
    import org.jdom.input.SAXBuilder;
    import org.xml.sax.InputSource;
    /**
     * JDOM解析
     * @author admin
     *
     */
    public class JDOMXmlResovlerDao {
    public static Map xmlResovlerDao(String xml) throws Exception {
    Map map=new HashMap();
    SAXBuilder saxBuilder = new SAXBuilder();
    //创建一个输入流,加载xml文件
    //InputStream in = new FileInputStream("src/mm.xml");
    //解析xml字符串
    StringReader read = new StringReader(xml);
    // 创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
    InputSource in = new InputSource(read);
    Document document = saxBuilder.build(in);
    //获取根节点
    Element rootElement = document.getRootElement();
    List<Element> elements = rootElement.getChildren();
    //获取属性值
    for (Element element : elements) {
    map.put(element.getName(), element.getValue());
    }
    return map;
    }
    }
  • 相关阅读:
    基于tensorflow的简单线性回归模型
    msm8909平台JEITA配置和bat-V therm表合入
    开始点滴积累
    消息队列中间件(一)介绍
    Ubuntu18 的超详细常用软件安装
    IO通信模型(三)多路复用IO
    IO通信模型(二)同步非阻塞模式NIO(NonBlocking IO)
    IO通信模型(一)同步阻塞模式BIO(Blocking IO)
    Web笔记(二)Tomcat 使用总结
    const in C/C++
  • 原文地址:https://www.cnblogs.com/2070393244com/p/11097328.html
Copyright © 2011-2022 走看看