zoukankan      html  css  js  c++  java
  • 简单 map 与 xml 互转

    package com.util;
    
    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.DocumentHelper;
    import org.dom4j.Element;
    
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    import java.util.Set;
    
    
    public class xmlMap {
    
    
        /**
         * 将map转为xml-string
         *
         * @param map
         * @return
         */
        public static String mapToXml(Map map) {
            StringBuilder sb = new StringBuilder();
            try {
                sb.append("<xml>");
                Set<String> keys = map.keySet();
                for (String key : keys) {
                    sb.append("<"+key+">"+String.valueOf(map.get(key))+"</"+key+">");
                }
                sb.append("</xml>");
            } catch (Exception e) {
                e.printStackTrace();
            }
            return sb.toString();
        }
    
        /**
         * 将xml-string转为map
         *
         * @param xml
         * @return
         */
        public static Map<String, String> xmlToMap(String xml) {
            try {
                Map<String, String> maps = new HashMap<>();
                Document document = DocumentHelper.parseText(xml);
                Element root = document.getRootElement();
                List<Element> eles = root.elements();
                for (Element e : eles) {
                    maps.put(e.getName(), e.getTextTrim());
                }
                return maps;
            } catch (DocumentException e) {
                e.printStackTrace();
            }
            return null;
        }
        
        public static void main(String[] args) {
            
            
            String XML = "<xml><return_code><![CDATA["+ "111111111" +
                    "]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>";
            
            Map<String, String> map = xmlToMap(XML);
            String xml = mapToXml(map);
            System.out.println(map);
            System.out.println(xml);
            
        }
        
    }
  • 相关阅读:
    关于IE11浏览器同意请求只执行一次的解决方法
    基于Vue+iView+OpenLayer在IE11上运行的方法总结
    vue 树形目录结构
    css中DIV中字过多时,使用省略号的方法
    hls.js在vue中的使用
    SQL优化
    Python 实现自动化 Excel 报表
    C# HttpClient 请求认证、数据传输笔记
    任务队列处理
    判断是否包含中文
  • 原文地址:https://www.cnblogs.com/lifan12589/p/13182549.html
Copyright © 2011-2022 走看看