读书人

xml跟JSON格式相互转换的Java实现

发布时间: 2012-09-20 09:36:50 作者: rapoo

xml和JSON格式相互转换的Java实现
依赖的包:

json-lib-2.4-jdk15.jar

ezmorph-1.0.6.jar

xom-1.2.1.jar

commons-lang-2.1.jar

commons-io-1.3.2.jar

jaxen-1.1.jar





输入xml文件,输出JSON对象

package com.cash.util;import java.io.IOException;import java.io.InputStream;import org.apache.commons.io.IOUtils;import net.sf.json.JSON;import net.sf.json.xml.XMLSerializer;public class Test {    public static void ConvertXMLtoJSON()  {        InputStream is = ConvertXMLtoJSON.class.getResourceAsStream("sample.xml");        String xml;        try {            xml = IOUtils.toString(is);            System.out.println(xml);            XMLSerializer xmlSerializer = new XMLSerializer();            JSON json = xmlSerializer.read(xml);            System.out.println(json.toString(1));        } catch (IOException e) {            e.printStackTrace();        }    }        public static void main(String[] args) {        ConvertXMLtoJSON();    }}


    /**     * 将xml字符串转换为JSON对象     * @param xmlFile xml字符串     * @return JSON对象     */    public JSON getJSONFromXml(String xmlString) {        XMLSerializer xmlSerializer = new XMLSerializer();        JSON json = xmlSerializer.read(xmlString);        return json;    }



    /**     * 将xmlDocument转换为JSON对象     * @param xmlDocument XML Document     * @return JSON对象     */    public JSON getJSONFromXml(Document xmlDocument) {        String xmlString = xmlDocument.toString();        return getJSONFromXml(xmlString);    }



    /**     * 将xml字符串转换为JSON字符串     * @param xmlString     * @return JSON字符串     */    public String getJSONStringFromXml(String xmlString ) {        return getJSONFromXml(xmlString).toString();    }




    /**     * 将xmlDocument转换为JSON字符串     * @param xmlDocument XML Document     * @return JSON字符串     */    public String getXMLtoJSONString(Document xmlDocument) {        return getJSONStringFromXml(xmlDocument.toString());    }



    /**     * 读取XML文件准换为JSON字符串     * @param xmlFile  XML文件     * @return JSON字符串     */    public String getXMLFiletoJSONString(String xmlFile) {        InputStream is = JsonUtil.class.getResourceAsStream(xmlFile);        String xml;        JSON json = null;        try {            xml = IOUtils.toString(is);            XMLSerializer xmlSerializer = new XMLSerializer();            json = xmlSerializer.read(xml);        } catch (IOException e) {            e.printStackTrace();        }        return json.toString();    }




    /**     * 将Java对象转换为JSON格式的字符串     *      * @param javaObj     *            POJO,例如日志的model     * @return JSON格式的String字符串     */    public static String getJsonStringFromJavaPOJO(Object javaObj) {        return JSONObject.fromObject(javaObj).toString(1);    }



    /**     * 将Map准换为JSON字符串     * @param map     * @return JSON字符串     */    public static  String getJsonStringFromMap(Map<?, ?> map) {        JSONObject object = JSONObject.fromObject(map);        return object.toString();    }



读书人网 >JavaScript

热点推荐