java json转换xml_xml和JSON格式相互转换的Java实现
依赖的包:
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();
}
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250
java json转换xml_xml和JSON格式相互转换的Java实现相关推荐
- json 转换成html,json字符串转换为html字符串
json数据格式用于数据传输转换是十分方便的,但是直接预览的可读性差,所以把json串转换为html串,可以直接在页面展示. 这种html展示在json列表中效果尤为明显. 注意:json格式一定要正 ...
- python json转换字典_Python json转字典字符方法实例解析
josn基本操作 1.导入import json 2.字典转json:json.dumps(dict,ensure_ascii=False),加,ensure_ascii=False转换之后无中文乱码 ...
- jquery ajax json转换出错Invalid JSON
ajax中json转换采用jQuery.parseJSON(json), 1.4版本后的jQuery.parseJSON(json)传入一个畸形的JSON字符串会抛出一个异常. 比如下面的都是畸形的J ...
- java 数字转换开发票大写格式_Java数字转大写金额格式小程序代码
今天看到可以用toCharArray()可以将字符串转换成数组,跟switch结合做个数字转中文大写金额格式的Java小程序,思路也很简单,全篇用switch.由于是字符串,无需担心输入数字过大,可以 ...
- java date 转换calendar_Java中日期格式(String、Date、Calendar)的相互转换
1 packageday20190318;2 3 importjava.text.ParseException;4 importjava.text.SimpleDateFormat;5 importj ...
- java 数字转换开发票大写格式_Java转化数字为大写人民币
/* * 将小写的人民币转化成大写 */ public static String convertToChineseNumber(double number) { StringBuffer chine ...
- java null转换jason_Java进阶知识,轻松理解Java泛型
在学习泛型之前我们先回顾下Java的数据类型以及涉及到的一些概念. Java数据类型 Java的两大数据类型分为基础类型和引用类型.基本类型的数值不是对象,不能调用对象的toString().hash ...
- java父类转换成子类_【转】java 父类与子类的转换
最近同事调的一个服务报错,查看后是日期之间转换出的问题.代码里是把 java.sql.Date 类型的对象 强制转换为 java.sql.Timestamp 类型的对象.报java.lang.Clas ...
- java 获取上传文件的格式_js和java获取上传文件的文件名以及上传文件格式判断...
js获取文件名: //校验 function check(){ var fileType = $("#template").val(); //判断后缀是不是需要的文件类型 if(f ...
最新文章
- 使用Keil语言的嵌入式C编程教程(上)
- 骗子防不胜防,我们该如何安全上网?
- IntelliJ idea 中使用Git
- Design Compiler指南——预综合过程
- python语法知识_Python 语法小知识
- mavenspringboot项目打包引入lib目录下jar包
- ES6_Set和WeakSet_note
- 基于python的智能安防系统_基于Python语言的智能家居系统研究
- ADO方法访问数据库的封装接口
- LaTeX tabular表格环境与命令
- 从单机数据库到分布式数据库,从数据库事务到分布式事务
- Android网络框架选用(示例,已实际运行)Retrofit,okhttp,volley
- No debugging symbols found in a.out
- 插画构图如何学习,小白必看
- 通用Excel数据导入功能模板
- Android 距离传感器修复 修复打电话黑屏 无法快速唤醒屏幕的BUG
- 软件测试工程师应该具备哪些能力?
- 雷达信号之脉冲压缩与占空比
- 初学AI的你也能一键部署模型服务?奥利给!!
- echarts 百万数据_GitHub - AricZhu/echarts-billion-data-disp: 针对 echarts 百万数据的折线图优化...