vlambda博客
学习文章列表

工具类|java实现Json和XML相互转换

关注我看更多实例和工具类
工具类|java实现Json和XML相互转换

我们平时编码过程中经常遇到的数据格式就是XML和JSON格式,有的时候需要互转一下,其实很简单,在“net.sf.json”包中就有的。
源码通过maven进行jar包配置,本文最下面有获取项目源码包方法。

XML和JSON互转 XmlJson.java


  1. package com.fengchen.xmljson;

  2. import net.sf.json.JSON;

  3. import net.sf.json.JSONSerializer;

  4. import net.sf.json.xml.XMLSerializer;

  5. public class XmlJson {

  6.    /**

  7.     * 将XML字符串转换成JSON

  8.     *

  9.     * @param xmlString

  10.     *            xml字符串

  11.     * @return JSON字符串

  12.     */

  13.    public static String xml2json(String xmlString) {

  14.        XMLSerializer xmlSerializer = new XMLSerializer();

  15.        JSON json = xmlSerializer.read(xmlString);

  16.        return json.toString(1);

  17.    }

  18.    /**

  19.     * JSON字符串转换成xml字符串

  20.     *

  21.     * @param jsonString

  22.     * @return XML字符串

  23.     */

  24.    public static String json2xml(String jsonString) {

  25.        XMLSerializer xmlSerializer = new XMLSerializer();

  26.        return xmlSerializer.write(JSONSerializer.toJSON(jsonString));

  27.    }

  28.    public static void main(String[] args) {

  29.        System.out.println("JSON:{name:'zhangsan',age:50} 返回XML:");

  30.        String json = "{name:'zhangsan',age:50}";

  31.        System.out.println(json2xml(json));

  32.        System.out.println("XML:<root><name>张三</name><age>50</age></root> 返回JSON:");

  33.        String xml = "<root><name>张三</name><age>50</age></root>";

  34.        System.out.println(xml2json(xml));

  35.    }

  36. }


以上程序执行结果如下所示:

JSON:{name:'zhangsan',age:50} 返回XML:

<?xml version="1.0" encoding="UTF-8"?>

<o><age type="number">50</age><name type="string">zhangsan</name></o>

XML:<root><name>张三</name><age>50</age></root> 返回JSON:

{

 "name": "张三",

 "age": "50"

}




READING
关于作者

入IT行业快20年了,平平淡淡,技术没多么牛逼,只是喜欢瞎想,闲暇时间自己动手Coding一下,突然有一天,想通过一些小应用让更多人能够上手做一些Java入门的应用。也算不枉度时光吧。都是一些浅显的应用例子+一些常用的工具类。如果喜欢,就关注下我。

关注后回复“1004”获取本次实例项目源码