欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java实现Xml与json之间的相互转换操作示例

程序员文章站 2024-02-19 14:19:10
本文实例讲述了java实现xml与json之间的相互转换操作。分享给大家供大家参考,具体如下: 旁白: 最近关于xml与json之间的转换都搞蒙了,这里写一个demo,...

本文实例讲述了java实现xml与json之间的相互转换操作。分享给大家供大家参考,具体如下:

旁白:

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

正题:

project格式是:

java实现Xml与json之间的相互转换操作示例

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);
  }
}

ps:这里再为大家提供几款相关在线工具供大家参考使用:

在线json代码检验、检验、美化、格式化工具:

在线xml/json互相转换工具:

在线格式化xml/在线压缩xml

xml在线压缩/格式化工具:

xml代码在线格式化美化工具:

更多关于java算法相关内容感兴趣的读者可查看本站专题:《java操作json格式数据技巧总结》、《java数据结构与算法教程》、《java操作dom节点技巧总结》、《java文件与目录操作技巧汇总》和《java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。