依赖的包:

json-lib-2.4-jdk15.jar

ezmorph-1.0.6.jar

xom-1.2.1.jar

commons-lang-2.1.jar

commons-io-1.3.2.jar

jaxen-1.1.jar

输入xml文件,输出JSON对象

package com.cash.util;

import java.io.IOException;
import java.io.InputStream; import org.apache.commons.io.IOUtils;
import net.sf.json.JSON;
import net.sf.json.xml.XMLSerializer; public class Test {
public static void ConvertXMLtoJSON() {
InputStream is = ConvertXMLtoJSON.class.getResourceAsStream("sample.xml");
String xml;
try {
xml = IOUtils.toString(is);
System.out.println(xml);
XMLSerializer xmlSerializer = new XMLSerializer();
JSON json = xmlSerializer.read(xml);
System.out.println(json.toString(1));
} catch (IOException e) {
e.printStackTrace();
}
} public static void main(String[] args) {
ConvertXMLtoJSON();
}
}
/**
* 将xml字符串转换为JSON对象
* @param xmlFile xml字符串
* @return JSON对象
*/

public JSON getJSONFromXml(String xmlString) {
XMLSerializer xmlSerializer = new XMLSerializer();
JSON json = xmlSerializer.read(xmlString);
return json;
}
/**
* 将xmlDocument转换为JSON对象
* @param xmlDocument XML Document
* @return JSON对象
*/
public JSON getJSONFromXml(Document xmlDocument) {
String xmlString = xmlDocument.toString();
return getJSONFromXml(xmlString);
}
/**
* 将xml字符串转换为JSON字符串
* @param xmlString
* @return JSON字符串
*/
public String getJSONStringFromXml(String xmlString ) {
return getJSONFromXml(xmlString).toString();
}
/**
* 将xmlDocument转换为JSON字符串
* @param xmlDocument XML Document
* @return JSON字符串
*/
public String getXMLtoJSONString(Document xmlDocument) {
return getJSONStringFromXml(xmlDocument.toString());
}
/**
* 读取XML文件准换为JSON字符串
* @param xmlFile XML文件
* @return JSON字符串
*/
public String getXMLFiletoJSONString(String xmlFile) {
InputStream is = JsonUtil.class.getResourceAsStream(xmlFile);
String xml;
JSON json = null;
try {
xml = IOUtils.toString(is);
XMLSerializer xmlSerializer = new XMLSerializer();
json = xmlSerializer.read(xml);
} catch (IOException e) {
e.printStackTrace();
}
return json.toString();
}
/**
* 将Java对象转换为JSON格式的字符串
*
* @param javaObj
* POJO,例如日志的model
* @return JSON格式的String字符串
*/
public static String getJsonStringFromJavaPOJO(Object javaObj) {
return JSONObject.fromObject(javaObj).toString(1);
}
/**
* 将Map准换为JSON字符串
* @param map
* @return JSON字符串
*/
public static String getJsonStringFromMap(Map<?, ?> map) {
JSONObject object = JSONObject.fromObject(map);
return object.toString();
}

xml和JSON格式相互转换的Java实现的更多相关文章

  1. java XML转JSON格式

    标签: XML转Json json 2014-05-20 20:55 6568人阅读 评论(6) 收藏 举报  分类: [J2SE基础](20)  代码如下所示,从这个例子中发现了代码库的重要性,如果 ...

  2. json格式字符串与java.util.Map的互转(借助于jackson.jar)

    package com.test.javaAPI.json; /** * json工具类 * * @author Wei * @time 2016年10月2日 下午4:25:25 */ public ...

  3. 【.net 深呼吸】聊聊WCF服务返回XML或JSON格式数据

    有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这 ...

  4. .net WebAPI返回xml、json格式

    WebAPI返回xml.json格式简单示例 using System.Net.Http.Formatting; public class TestController : ApiController ...

  5. Ajax中XML和JSON格式的优劣比较

    刚做完一个小的使用Ajax的项目.整个小项目使用JavaScript做客户端,使用PHP做服务器端.利用xmlHttpRequest组件作为交互工具,利用XML作为数据传输的格式.做完后基本做一个简单 ...

  6. 发送xml或json格式的数据给服务器

    后台通过context.Request.InputStream来接收 #region 发送消息 + void SendMessage() /// <summary> /// 发送消息 // ...

  7. C# XML与Json之间相互转换实例详解

    对于这转换其实很简单,其中最重要的就是先要引用类库.可以到官网进行下载引用http://json.codeplex.com. XML转换为Json字符串 string xml = @"< ...

  8. 使用CJSON库实现XML与JSON格式的相互转化

    之前完成了一个两个平台对接的项目.由于这两个平台一个是使用json格式的数据,一个是使用xml格式的数据,要实现它们二者的对接就涉及到这两个数据格式的转化,在查阅相关资料的时候发现了这个CJSON库, ...

  9. xml转换为json格式时,如何将指定节点转换成数组 Json.NET

    使用Json.NET转换xml成json时,如果xml只有单个节点,但json要求是数组形式[], JsonConvert.SerializeXmlNode 并不能自动识别 示例如下: RecordA ...

随机推荐

  1. Java里的堆(heap)栈(stack)和方法区(method)

    基础数据类型直接在栈空间分配, 方法的形式参数,直接在栈空间分配,当方法调用完成后从栈空间回收.   引用数据类型,需要用new来创建,既在栈空间分配一个地址空间,又在堆空间分配对象的类变量 . 方法 ...

  2. java String标准格式转换Date(yyyy-MM-dd HH:mm:ss)

    SimpleDateFormat sdf=new SimpleDateFormat("yyy年MM月dd日hh点mm分"); Date date=new Date(); Strin ...

  3. springmvc 类型转换器 数据回显及提示信息

    处理器的写法: 类型转换器的写法: 类型转换器在springmvc.xml中的配置如下: index.jsp的写法:

  4. css常用属性总结:关于word-spacing和letter-spacing的使用

    前端时间项目版本迭代,修改代码时发现使用了关于word-spacing和letter-spacing.先说下使用场景,以前的项目中,经常遇到某些字符间有一些间距,我看了一些同事的代码是这么实现的: & ...

  5. python's os.system&os.spawn

    [python's os.system&os.spawn] os.system会新建一个子shell,在子shell中执行传入的sh脚本.os.spawn用于执行一个bin,产生一个子进程.所 ...

  6. jquery去掉click事件

    1:使用removeAttr( )和attr( ) $("a").attr("click",test()); $("a").removeAt ...

  7. DNS BIND之rndc介绍及使用

    rndc(Remote Name Domain Controllerr)是一个远程管理bind的工具,通过这个工具可以在本地或者远程了解当前服务器的运行状况,也可以对服务器进行关闭.重载.刷新缓存.增 ...

  8. php 共享内存学习(shmop函数)

    问题:希望可以在进程间共享变量,为共享数据提供快速访问 解决方案:除了可以使用APC模块,还可以用shmop或System V共享内存 //创建键 //将一个可访问的文件路径名转换为一个可供 shmo ...

  9. python设置格式模板

    # -*- coding: utf-8 -*- """ __mktime__ = '${DATE}' __author__ = '${USER}' __filename_ ...

  10. 安装python-empy

    sudo python setup.py install