java xmltojson jsontoxml
JSONObject.fromObject需要的有额外的6个包,必不可少,一定要注意:
commons-beanutils-1.9.2.jar
commons-collections-3.2.2.jar
commons-lang-2.6.jar
commons-logging-1.2.jar
ezmorph-1.0.6.jar
json-lib-2.4-jdk15.jar
package com.ekingwin.bas.xmljson.utils;
import net.sf.json.JSON;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JSONSerializer;
import net.sf.json.xml.XMLSerializer;
public class xmljson
{
  public static String xmlToJson(String xmlContent)
  {
    if ((xmlContent == null) || ("".equals(xmlContent)))
    {
      return "";
    }
xmlContent = xmlContent.replace("\r", "");
    xmlContent = xmlContent.replace("\n", "");
    xmlContent = xmlContent.replace("\t", "");
    xmlContent = xmlContent.replace("  ", "");
    xmlContent = xmlContent.replace("<ITEM>", " <ITEM>");
    xmlContent = xmlContent.replace("xmlns", " xmlns");
    xmlContent = xmlContent.replace("<e xmlns=\"http://byd.eai.sap\" class=\"object\">", " <e xmlns=\"http://byd.eai.sap\" class=\"object\">");
    String jsonContent = "";
    XMLSerializer xmlSerializernew = new XMLSerializer();
    xmlSerializernew.setSkipNamespaces(true);
    xmlSerializernew.setRemoveNamespacePrefixFromElements(true);
    jsonContent = xmlSerializernew.read(xmlContent.toString()).toString();
    jsonContent = jsonContent.replace("null", "\"\"").replace("[]", "\"\"");
    return jsonContent;
  }
public static String jsonToXml(String jsonContent)
  {
    String xmlContent = "";
    XMLSerializer xmlSerializernew = new XMLSerializer();
    xmlSerializernew.setTrimSpaces(true);
    if ((jsonContent.startsWith("[")) && (jsonContent.endsWith("]")))
    {
      jsonContent =jsonContent.replaceAll(":\\s*(\\d+\\.\\d+)",":\"$1\"");
      xmlContent = xmlSerializernew.write(JSONArray.fromObject(jsonContent));
      xmlContent = xmlContent.replace("<e class=\"object\">", "<ITEM>");
	  xmlContent = xmlContent.replace("<e type=\"number\">", "<ITEM>");	  
      xmlContent = xmlContent.replace("</e>", "</ITEM>");
      xmlContent = xmlContent.replace("<o>", "");
      xmlContent = xmlContent.replace("</o>", "");
      xmlContent = xmlContent.replace(" class=\"object\"", "");
      xmlContent = xmlContent.replace(" type=\"string\"", "");
      xmlContent = xmlContent.replace(" class=\"array\"", "");
      xmlContent = xmlContent.replace(" null=\"true\"", "");
      xmlContent = xmlContent.replace(" type=\"number\"", "");
    }
    else {
      jsonContent =jsonContent.replaceAll(":\\s*(\\d+\\.\\d+)",":\"$1\"");
      xmlContent = xmlSerializernew.write(JSONSerializer.toJSON(jsonContent));
      xmlContent = xmlContent.replace("<e class=\"object\">", "<ITEM>");
	  xmlContent = xmlContent.replace("<e type=\"number\">", "<ITEM>");
      xmlContent = xmlContent.replace("</e>", "</ITEM>");
      xmlContent = xmlContent.replace("<o>", "");
      xmlContent = xmlContent.replace("</o>", "");
      xmlContent = xmlContent.replace(" class=\"object\"", "");
      xmlContent = xmlContent.replace(" type=\"string\"", "");
      xmlContent = xmlContent.replace(" class=\"array\"", "");
      xmlContent = xmlContent.replace(" null=\"true\"", "");
      xmlContent = xmlContent.replace(" type=\"number\"", "");
    }
    return xmlContent;
  }
public static void main(String[] args) {	
	String a = "{\"Request\": {\r\n" + 
			"    \"head\": {\r\n" + 
			"      \"BIZTRANSACTIONID\": \"qwertyuioplkjhgfd\",\r\n" + 
			"      \"COUNT\": \"1\",\r\n" + 
			"      \"CONSUMER\": \"ERP\",\r\n" + 
			"      \"SRVLEVEL\": \"1\",\r\n" + 
			"      \"ACCOUNT\": \"\",\r\n" + 
			"      \"PASSWORD\": \"\"\r\n" + 
			"},\r\n" + 
			"\r\n" + 
			"  \"List\": [{\r\n" + 
			"        \"id\": 1.78978979,\r\n" + 
			"        \"name\": 3546545646.23165778789,\r\n" + 
			"        \"phone\": 12345678,\r\n" + 
			"        \"address\": 66554.3689745,\r\n" + 
			"        \"mail\": \"321@test.com\"\r\n" + 
			"      }\r\n" + 
			"    ]\r\n" + 
			"}\r\n" + 
			"}";
	String b = "<Request><List><ITEM><address>66554.3689745</address><id>1.78978979</id><mail>321@test.com</mail><name>3546545646.23165778789</name><phone>12345678</phone></ITEM></List><head><ACCOUNT/><BIZTRANSACTIONID>qwertyuioplkjhgfd</BIZTRANSACTIONID><CONSUMER>ERP</CONSUMER><COUNT>1</COUNT><PASSWORD/><SRVLEVEL>1</SRVLEVEL></head></Request>\r\n" + 
			"";
	System.out.println(jsonToXml(a));
	System.out.println(xmlToJson(a));
}
}
java xmltojson jsontoxml的更多相关文章
- JsonHelper developed by using Newtonsoft.Json.NET, Deserialize to <T> object , XmlToJson/JsonToXml, QuoteName by using JToken Path.
		namespace TestConsoleApplication { using System; using System.Diagnostics; using System.Threading; u ... 
- node.js实用小模块
		1.浮点数操作 npm install float 2.MD5加密类 npm install MD5 3.xml解析类 1 npm install elementtree 4.转换字符串大小写 1 n ... 
- Spark案例分析
		一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ... 
- java中json转xml
		参考:http://heipark.iteye.com/blog/1394844 需要json-lib-2.1-jdk15.jar和xom-1.2.5.jar,maven pom.xml如下: xml ... 
- json:JSONObject包的具体使用(JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包)
		1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包. 2.下载jar包 http:// ... 
- java中处理json各种各样转换方法
		JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.本文将快速讲解 JSON 格式,并通过代码示例演示如 ... 
- java下XML与JSON互相转换的Utils类
		原文:http://heipark.iteye.com/blog/1394844 需要json-lib-2.1-jdk15.jar和xom-1.2.5.jar,maven pom.xml如下: < ... 
- Java xml和map,list格式的转换-摘抄
		import java.io.ByteArrayOutputStream; import java.util.ArrayList; import java.util.HashMap; import j ... 
- JAVA 实现XML与JSON 相互转换
		原文地址https://blog.csdn.net/congcong68/article/details/39029907 在工作中,经常碰到XML转为JSON或者JSON转为XML,在这过程中有时嵌 ... 
随机推荐
- iOS 获取self类型
			类型转换快速写法 typeof(self) bself = self; 版权声明:本文为博主原创文章,未经博主允许不得转载. 
- Linux C遇到的常见错误
			此随笔主要记录一些Linux C遇到的常见错误,便于debug问题或自己编程时,避免发生类似的错误或问题,后续会持续更新.... 1.内存泄露问题 内存泄露是由于内存没有释放导致程序耗内存一直增大,引 ... 
- StaticInjectorError[Http]:
			报错:AppComponent.html:28 ERROR Error: StaticInjectorError[Http]: StaticInjectorError[Http]: 解决方法: 
- webstorm 插件安装
			1.打勾的表示已经安装 2.没有安装的插件,可以在plugins搜索,在右边搜索结果里点install,然后重启webstorm 3.这里有常用插件 http://blog.csdn.net/xs20 ... 
- Centos7下实现docker + wordpress 安装
			一.Docker CE 安装 检查是否安装过旧的版本 如果系统安装旧版本Docker需要先卸载,命令如下: [root@localhost Wordpresss]sudo yum remove doc ... 
- C++构造函数异常(二)
			继续上一篇文章提到的构造异常话题,下面继续谈另外两个场景,即多继承构造异常,以及智能指针构造异常 第3:对多继承当中,某个基类构造异常,而其他基类已构造成功,则构造成功的基类不会析构,由编译器负责回收 ... 
- python获取港股通每日成交信息
			接口:ggt_daily 描述:获取港股通每日成交信息,数据从2014年开始 限量:单次最大1000,总量数据不限制 积分:用户积2000积分可调取,5000积分无限制,请自行提高积分,具体请参阅本文 ... 
- Python之switch
			首先声明,Python没有switch!!! 通过函数与字典的结合实现 #!/usr/bin/python #coding:utf-8 from __future__ import division ... 
- 《代码大全2》读书笔记  Week9
			本周阅读了<代码大全2>第14章至第17章,这几章对我们熟悉的直线型代码.条件语句.循环语句和一些不常用的控制结构(如goto.try-catch结构)提出了一些使用建议,以下分享条件语句 ... 
- python获取网页源代码
			最简单的网页取源(不用模拟浏览器的情况) import requests def getHTML(url): try: r = requests.get(url,timeout=30) r.raise ... 
