xml转json的方法
.第一种方法
使用JSON-JAVA提供的方法,之前一直使用json-lib提供的方法转json,后来发现了这个开源项目,觉得用起来很不错,并且可以修改XML.java中的parse方法满足自己的转换需要。
()首先去git下载所需的java文件,并导入项目
Git:https://github.com/stleary/JSON-java
()使用XML.java中提供的XML.toJSONObject(xml)方法即可完成xml到json的转换,同时也可以对JSON进行格式化
[java] view plain copy
/* 第一种方法,使用JSON-JAVA提供的方法 */
//将xml转为json
JSONObject xmlJSONObj = XML.toJSONObject(xml);
//设置缩进
String jsonPrettyPrintString = xmlJSONObj.toString();
//输出格式化后的json
System.out.println(jsonPrettyPrintString);
.第二种方法
使用json-lib的XMLSerializer对象
()创建XMLSerializer对象
()使用XMLSerializer的read(xml)方法即可
[java] view plain copy
/* 第二种方法,使用json-lib提供的方法 */
//创建 XMLSerializer对象
XMLSerializer xmlSerializer = new XMLSerializer();
//将xml转为json(注:如果是元素的属性,会在json里的key前加一个@标识)
String result = xmlSerializer.read(xml).toString();
//输出json内容
System.out.println(result);
.测试
[java] view plain copy
public class Test {
public static void main(String[] args) {
String xml = "<class id="
+ "'1'"
+ "><student><name>aaaaaa</name><age>21</age></student><student><name>bbbbbb</name><age>22</age></student></class>";
/* 第一种方法,使用JSON-JAVA提供的方法 */
//将xml转为json
JSONObject xmlJSONObj = XML.toJSONObject(xml);
//设置缩进
String jsonPrettyPrintString = xmlJSONObj.toString();
//输出格式化后的json
System.out.println(jsonPrettyPrintString);
/* 第二种方法,使用json-lib提供的方法 */
//创建 XMLSerializer对象
XMLSerializer xmlSerializer = new XMLSerializer();
//将xml转为json(注:如果是元素的属性,会在json里的key前加一个@标识)
String result = xmlSerializer.read(xml).toString();
//输出json内容
System.out.println(result);
}
第一种方法输出:
[java] view plain copy
{"class": {
"id": ,
"student": [
{
"age": ,
"name": "aaaaaa"
},
{
"age": ,
"name": "bbbbbb"
}
]
}}
第二种方法输出:
[java] view plain copy
{"@id":"","student":[{"name":"aaaaaa","age":""},{"name":"bbbbbb","age":""}]}
源码下载:http://download.csdn.net/detail/lom9357bye/9690304
参考:http://hw1287789687.iteye.com/blog/2229267
http://heshans.blogspot.com/2014/01/java-library-to-convert-xml-to-json.html
xml转json的方法的更多相关文章
- ASP.NET中XML转JSON的方法
原文:ASP.NET中XML转JSON的方法 许多应用程序都将数据存储为XML的格式,而且会将数据以JSON的格式发送到客户端以做进一步处理.要实现这一点,它们必须将XML格式转换为JSON格式. X ...
- DataTable 转 JSON,XML转JSON
今天总结一下关于DataTable,XML转JSON的方法: 首先需要引入命名空间: using Newtonsoft.Json 1 public string DataTableToJsonWith ...
- C#实现调用接口数据获取数据格式化XML、json转成Table的方法
废话不多说,直接上代码: json 格式化转DataTable: result为从接口得到的数据,格式化json的方法主要来自Newtonsoft.Json JObject joUnit = JObj ...
- WebApi接口 - 响应输出xml和json
格式化数据这东西,主要看需要的运用场景,今天和大家分享的是webapi格式化数据,这里面的例子主要是输出json和xml的格式数据,测试用例很接近实际常用情况:希望大家喜欢,也希望各位多多扫码支持和点 ...
- 【.net 深呼吸】聊聊WCF服务返回XML或JSON格式数据
有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这 ...
- [Network] HTML、XML和JSON学习汇总
写在前面:楼主也是刚刚接触这方面的知识,之前完全是零基础,后来经朋友推荐了几个不错的博文,看完以后豁然开朗.但是此博文更加偏重于基础知识介绍(其实更深的楼主也还不了解,这方面的大神请绕道),只是分享个 ...
- XML和JSON数据格式对比
概念 XML 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语 ...
- xml和json的区别
本文转自SanMaoSpace的博客 链接地址如下:http://www.cnblogs.com/SanMaoSpace/p/3139186.html 1.定义介绍 (1).XML定义扩展标记语言 ( ...
- C#中XML和json互相转换
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Xm ...
随机推荐
- CTF-练习平台-WEB之 计算题
四.计算题 打开连接 输入后发现只能输入一个数字,在火狐浏览器中按F12,打开查看器 ,如图所示修改最大长度 输入答案后验证,当当当~~flag出现
- ThinkPHP AJAX分页及JS缓存的应用
//AJAX分页详见兄弟连PHP项目视频教程22讲35分钟左右 主要实现是需要将分页中的每个链接都改为AJAX请求 //前端缓存技术:基于javascript传输的数据,只要浏览器没关,都保存在内存中 ...
- Html页面Dom对象之Element
HTML DOM Element 对象 HTML DOM 节点 在 HTML DOM (文档对象模型)中,每个部分都是节点: 文档本身是文档节点 所有 HTML 元素是元素节点 所有 HTML 属性是 ...
- 红黑树-算法大神的博客-以及java多线程酷炫的知识
http://www.cnblogs.com/skywang12345/p/3245399.html 解释第5条:从 ->根节点(或者任意个结点)到->所有的末端节点的路径中 ->黑 ...
- JSP指令include和JSP动作元素include的区别
include指令用于在JSP页面静态的包含一个文件,该文件可以是JSP页面.HTML页面.文本文件或者一段java代码.使用include指令的JSP页面在转换时,JSP容器会在其中插入所包含文件的 ...
- Mybatis连接Oracle实现增删改查实践
1. 首先要在项目中增加Mybatis和Oracle的Jar文件 这里我使用的版本为ojdbc7 Mybatis版本为:3.2.4 2. 在Oracle中创建User表 create table T_ ...
- hadoop入门篇-hadoop下载安装教程(附图文步骤)
在前几篇的文章中分别就虚拟系统安装.LINUX系统安装以及hadoop运行服务器的设置等内容写了详细的操作教程,本篇分享的是hadoop的下载安装步骤. 在此之前有必要做一个简单的说明:分享的所有内容 ...
- TesseractOCR Tutorials
先放上之前收集的资源,有空写博客. 点我
- C指针笔试题,蛋疼的多重指针运算,谭浩强的阴影
对指针的概念清晰的话,做这种题只要耐心就行,然而看这种题就烦(被同学吐槽为谭浩强的阴影……草泥马这种C风格题有意义吗?出题人脑子被门夹了?而且C++11都不支持字面值字符串直接转换成char*了.好吧 ...
- a标签不用点击模拟跳转url。
因为请求到数据前要判断用户是否是登录状态, 所以就想页面数据请求成功,就跳转到登录页面, 就用了location.href = url. 结果因为同源策略不能访问, 没想到a标签竟然可以直接跳转这个U ...