Java 项目 JSON 转 XML(By fastjson)
Java 项目 JSON 转 XML(By fastjson)
package com.test;import java.util.Iterator;
import java.util.Map.Entry;import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;public class JsonToXml {public static void main(String[] args) {// TODO 自动生成的方法存根String jsonstr = "{\"A\":{\"B\":{\"C\":{\"PUUID\":\"9e5a2bcc26b74e829ecf7d7a244b851a\",\"E\":[{\"aa\":\"3ee2eac7281948858842d593f8f2c7ad\",\"hh\":\"18533446798\",\"ff\":\"\",\"gg\":\"N\",\"dd\":\"F\",\"bb\":\"f4eae0f34a5c4d1f93692aa19b3bf189\",\"ee\":\"\",\"bb\":\"y\",\"cc\":\"123456\"},{\"aa\":\"cd3008dbdf4b4205adbbb0f391e97904\",\"hh\":\"18533446799\",\"ff\":\"aa\",\"gg\":\"N\",\"dd\":\"F\",\"UUID\":\"7e037286fc484a06bd7243fe0cbd0889\",\"ee\":\"\",\"bb\":\"z\",\"cc\":\"456789\"}]}}}}";System.out.println("json to xml: " + executeJsonToXml(JSONObject.parseObject(jsonstr)));}public static String jsontoxml(JSONObject jo, String gt) {StringBuffer xmlStr = new StringBuffer();Iterator<Entry<String, Object>> iter = jo.entrySet().iterator();while (iter.hasNext()) {Entry<String, Object> entry = (Entry<String, Object>) iter.next();String key = entry.getKey().toString();String val = entry.getValue().toString();
// System.out.println("key: " + key);
// System.out.println("val: " + val);//值非空if (!isStringNull(val)) {//JSON对象if (val.substring(0, 1).equals("{")) {xmlStr.append(gt);xmlStr.append("<");xmlStr.append(key);xmlStr.append(">\n");xmlStr.append(jsontoxml(JSONObject.parseObject(val), gt + "\t"));xmlStr.append(gt);xmlStr.append("</");xmlStr.append(key);xmlStr.append(">\n");} //JSON数组else if (val.substring(0, 1).equals("[")) {JSONArray ja = JSONArray.parseArray(val);for (int i = 0; i < ja.size(); i++) {JSONObject jo2 = new JSONObject();jo2.put(key, ja.getJSONObject(i));xmlStr.append(jsontoxml(jo2, gt + "\t"));}} //JSON值else {xmlStr.append(gt);xmlStr.append("<");xmlStr.append(key);xmlStr.append(">");xmlStr.append(val);xmlStr.append("</");xmlStr.append(key);xmlStr.append(">\n");}}//值为空else{xmlStr.append(gt);xmlStr.append("<");xmlStr.append(key);xmlStr.append(">");xmlStr.append("");xmlStr.append("</");xmlStr.append(key);xmlStr.append(">\n");}}return xmlStr.toString();}public static String executeJsonToXml(JSONObject jo0) {String xml = jsontoxml(jo0, "");return xml;}// 判断字符串是否为空public static boolean isStringNull(String str) {if (str == null || str.isEmpty() || str.length() == 0 || "".equals(str)) {return true;}return false;}
}
测试 JSON
{"A": {"B": {"C": {"PUUID": "9e5a2bcc26b74e829ecf7d7a244b851a","E": [{"aa": "3ee2eac7281948858842d593f8f2c7ad","hh": "18533446798","ff": "","gg": "N","dd": "F","bb": "y","ee": "","cc": "123456"},{"aa": "cd3008dbdf4b4205adbbb0f391e97904","hh": "18533446799","ff": "aa","gg": "N","dd": "F","UUID": "7e037286fc484a06bd7243fe0cbd0889","ee": "","bb": "z","cc": "456789"}]}}}
}
输出 XML
<A><B><C><PUUID>9e5a2bcc26b74e829ecf7d7a244b851a</PUUID><E><aa>3ee2eac7281948858842d593f8f2c7ad</aa><hh>18533446798</hh><ff></ff><gg>N</gg><dd>F</dd><bb>y</bb><ee></ee><cc>123456</cc></E><E><aa>cd3008dbdf4b4205adbbb0f391e97904</aa><hh>18533446799</hh><ff>aa</ff><gg>N</gg><dd>F</dd><ee></ee><bb>z</bb><cc>456789</cc><UUID>7e037286fc484a06bd7243fe0cbd0889</UUID></E></C></B>
</A>
在线代码格式化网站:
OSCHINA 在线代码格式化
Java 项目 JSON 转 XML(By fastjson)相关推荐
- Java XML转换为JSON XML解析 转换为JSON Java 实现JSON转换为XML json转xml
Java XML转换为JSON XML解析 转换为JSON Java 实现JSON转换为XML json转xml 一.转换代码 1.XML字符串转换为JSON /*** description: XM ...
- JAVA中JSON转XML
工具方法如下 import java.util.Iterator; import java.util.Map; import java.util.Set;import com.alibaba.fast ...
- java 原生 json 转 xml java json转xml 实现代码 读取本地json文件 转成 xml数据 用springboot 发布xml格式数据
结果xml截图 json数据 main启动 import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; ...
- java项目——Dom4j读取XML文件连接orecal数据库
Dom4j介绍: dom4j是一个简单的开源库,用于处理XML. XPath和XSLT,它基于Java平台,使用Java的集合框架,全面集 成了DOM,SAX和JAXP.在国内比较 ...
- java项目——Dom4j读取XML文件保存orecal数据库
上一篇介绍了如何利用dom4j读取xml文件,连接数据库,换数据库的话直接修改XML文件,使配置更加灵 活,本篇博客主要介绍一下如何将XML文件导入到orecal数据库中. XML在现在的项目中的应用 ...
- java json转换xml_在Java中将JSON转换为XML
我是json的新手.我有一个程序可以从json对象生成xml. String str = "{'name':'JSON','integer':1,'double':2.0,'boolean' ...
- Java项目Json字符串转对象,去斜杠
1.通过前端存储到数据库的json对象都会带转义符,而普通的json转对象再强转对象是有问题的,这时候就需要我们通过fastJson来完成去除转义符,转成json对象,这样就不会报错了. 2.通过fa ...
- java json转换xml格式_在Java中将JSON对象转换为XML格式?
JSON是一种轻量级的数据交换格式,并且JSON的格式类似于键值对.我们可以使用org.json.XML类将JSONObject转换为XML格式,这提供了将XML文本转换为JSONObject并将JS ...
- java 序列化成xml文件_将Java对象序列化成JSON和XML格式
1.先定义一个Java对象Person: public class Person { String name; int age; int number; public String getName() ...
最新文章
- 都是推荐系统,广告算法和推荐算法有啥区别?
- 编程之美-2.14-求数组的子数组之和的最大值
- 看好电影,学标准英语
- Linux上装vscode需要认证,linux系统安装vscode方法 ubuntu等系统上部署VisualStudioCode
- Windows导出所有计划任务方法
- 结构体对齐 大小 位域问题
- Jmeter(十一)测试监听
- 2. HTML DOM Element 对象
- Mysql优化(出自官方文档) - 第六篇
- 教你webm格式怎么转换成mp4
- 2017最新App Store 审核指南中文版
- 名片设计尺寸及注意事项(详尽),附加:文字转曲线或外框字;网址、文字转二维码方法
- matlab单回路和串级控制回路,单回路和串级控制系统仿真研究
- 为什么canvas画的是正方形是长方形
- 美国大学计算机系学什么,2017美国大学计算机专业排名
- 电话机器人API接口-空号识别-座席WEBAPI
- [转帖]《今日用友》:封闭的“苹果”
- pandas 处理缺失值[dropna、drop、fillna]
- Git从库中移除已删除大文件
- linux nfs root无权限,nfs root 无权限_如何允许root用户访问NFS?