zoukankan      html  css  js  c++  java
  • java中Xml、json之间的相互转换

    旁白:

    最近关于xml与json之间的转换都搞蒙了,这里写一个demo,以后备用。

    正题:

    project格式是:

    jar包是一个一个检出来的,还算干净了。

    代码:

    工具类:

    package exercise.xml;
    
    import net.sf.json.JSON;
    import net.sf.json.JSONSerializer;
    import net.sf.json.xml.XMLSerializer;
    
    import org.jdom.Document;
    
    public class XmlExercise {
    
        /**
         * 将xml字符串<STRONG>转换</STRONG>为JSON字符串
         * 
         * @param xmlString
         *            xml字符串
         * @return JSON<STRONG>对象</STRONG>
         */
        public static String xml2json(String xmlString) {
            XMLSerializer xmlSerializer = new XMLSerializer();
            JSON json = xmlSerializer.read(xmlString);
            return json.toString(1);
        }
    
        /**
         * 将xmlDocument<STRONG>转换</STRONG>为JSON<STRONG>对象</STRONG>
         * 
         * @param xmlDocument
         *            XML Document
         * @return JSON<STRONG>对象</STRONG>
         */
        public static String xml2json(Document xmlDocument) {
            return xml2json(xmlDocument.toString());
        }
    
        /**
         * JSON(数组)字符串<STRONG>转换</STRONG>成XML字符串
         * 
         * @param jsonString
         * @return
         */
        public static String json2xml(String jsonString) {
            XMLSerializer xmlSerializer = new XMLSerializer();
            return xmlSerializer.write(JSONSerializer.toJSON(jsonString));
            // return xmlSerializer.write(JSONArray.fromObject(jsonString));//这种方式只支持JSON数组
        }
    
    }

    测试类:

    package exercise.xml;
    
    import net.sf.json.JSONArray;
    import net.sf.json.JSONObject;
    
    public class XmlTest extends XmlExercise {
    
        public static void main(String[] args) {
    
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("username", "horizon");
            JSONArray jsonArray = new JSONArray();
            JSONObject dataJson = new JSONObject();
            jsonArray.add(jsonObject);
            //jsonArray.add(jsonObject);
            dataJson.put("data", jsonArray);
            System.out.println(dataJson.toString());
    
            String xml = json2xml(dataJson.toString());
            System.out.println("xml:" + xml);
            String str = xml2json(xml);
            System.out.println("to_json" + str);
    
        }
    }
  • 相关阅读:
    C++ std::forward_list
    MyBatis基础入门《十三》批量新增数据
    MyBatis基础入门《十二》删除数据
    MyBatis基础入门《十 一》修改数据
    MyBatis基础入门《十》添加数据
    MyBatis基础入门《九》ResultMap自动匹配
    MyBatis基础入门《八》查询参数传入Map
    MyBatis基础入门《七》查询参数传入对象
    MyBatis基础入门《六》Like模糊查询
    MyBatis基础入门《五》核心配置文件
  • 原文地址:https://www.cnblogs.com/tv151579/p/3516674.html
Copyright © 2011-2022 走看看