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();
}






				
时间: 2024-08-09 14:46:09

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

java XML转JSON格式

标签: XML转Json json 2014-05-20 20:55 6568人阅读 评论(6) 收藏 举报  分类: [J2SE基础](20)  代码如下所示,从这个例子中发现了代码库的重要性,如果建立一个自己的代码库,就可以直接从自己的代码库中取出来,这样需要什么就可以随时的取出来.代码库要保证的是规范性和正确性,并且有简单的模块注释. 这是今天在网上找到的XML转json格式的代码,人家封装的很快,节省了我很多时间啊. [java] view plain copy print? impor

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

有时候,为了让数据可以“跨国经营”,尤其是HTTP Web有关的东东,会将数据内容以 XML 或 JSON 的格式返回,这样一来,不管客户端平台是四大文明古国,还是处于蒙昧时代的原始部落,都可以使用这些数据. 在WCF中实现将数据以XML或JSON格式返回有Y多种方法,不管你用什么方法,只要得到预期结果就好,米芾说了,笔可以八面出锋,当然了,人家指的是绘画. 这里,老周就挑两种方法来演示,仅供参考,没有考古价值,建议司马子长不要把本文收入<史记>. 第一种方法是用到 WebServiceHos

API 设置输出格式可以为XML和Json格式

Accept : application/xml Accept: application/json //如下设置可以支持xml和json格式输出.默认输出格式为json services.AddControllers(configure: setup => { setup.ReturnHttpNotAcceptable = true; }).AddXmlDataContractSerializerFormatters(); //默认输出格式为Json,现在把默认格式给为XML格式输出 servi

javascript 解析ajax返回的xml和json格式的数据

写个例子,以备后用 一.JavaScript 解析返回的xml格式的数据: 1.javascript版本的ajax发送请求 (1).创建XMLHttpRequest对象,这个对象就是ajax请求的核心,是ajax请求和响应的信息载体,单是不同浏览器创建方式不同 (2).请求路径 (3).使用open方法绑定发送请求 (4).使用send() 方法发送请求 (5).获取服务器返回的字符串   xmlhttpRequest.responseText; (6).获取服务端返回的值,以xml对象的形式存

SpringBoot RestController 同时支持返回xml和json格式数据

@RestController 默认支持返回json格式数据,即使不做任何配置也能返回json数据 当接口需要支持xml或json两种格式数据时应该怎么做呢? 只要引入 Jackson xml的 maven依赖就可以了: <dependency> <groupId>com.fasterxml.jackson.jaxrs</groupId> <artifactId>jackson-jaxrs-xml-provider</artifactId> &l

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

使用Json.NET转换xml成json时,如果xml只有单个节点,但json要求是数组形式[], JsonConvert.SerializeXmlNode 并不能自动识别 示例如下: RecordArray要求是数组格式 <root> <Record> </Record> <RecordArray> <a>1</a> <b>2</b> </RecordArray> </root> 转换

CSV和JSON格式相互转换

1.为什么要进行CSV与JSON格式之间的转换 CSV格式常用于一二维数据表示和存储,他是一种纯文本形式存储表格数据的表示方式.JSON也可以表示一二维数据.在网络信息传输中,可能需要统一表示方式,因此,需要在CSV和JSON格式间进行相互转换. 2.代码 csv转json: student_csv=[]; student_json=[]; with open("student.csv",mode='r',encoding='ansi')as student_csv_file_name

xml和json格式输出

<?php class Response{ const JSON ='json'; /* * 按综合方式输出通信数据 * @param integer $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @param string $type 数据类型 * return string */ public static function show($code,$message='',$data=array(),$typ

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

using System.Xml.Linq; using Newtonsoft.Json; Response.ContentType = "application/json"; XDocument xdoc = XDocument.Load(path); Response.Write(JsonConvert.SerializeXNode(xdoc)); xml 片段 : <specialty nameCN="电测"> <step> <s