Java 项目 JSON 转 XML(By fastjson)
生活随笔
收集整理的這篇文章主要介紹了
Java 项目 JSON 转 XML(By fastjson)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
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數(shù)組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>在線代碼格式化網(wǎng)站:
OSCHINA 在線代碼格式化
總結
以上是生活随笔為你收集整理的Java 项目 JSON 转 XML(By fastjson)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql创建表插入随机数_插入随机数到
- 下一篇: 又到清明时节。。。