Java中xml字符串与json字符串的互转
时间:2021-08-12
本文章向大家介绍Java中xml字符串与json字符串的互转,主要包括Java中xml字符串与json字符串的互转使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
0.pom文件
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180813</version>
</dependency>
1.XML字符串 -> JSON字符串
/**
* @Description: XML字符串 -> JSON字符串
* @Author: Yiang37
* @Date: 2021/08/12 10:53:47
* @Version: 1.0
*/
public static String xmlToJson(String xmlStr) {
JSONObject jsonObject = XML.toJSONObject(xmlStr);
return jsonObject.toString();
}
2.JSON字符串 - > XML字符串
/**
* @Description: JSON字符串 - > XML字符串
* @Author: Yiang37
* @Date: 2021/08/12 10:54:12
* @Version: 1.0
*/
public static String jsonToXml(String jsonStr) {
JSONObject jsonObject = new JSONObject(jsonStr);
String xmlStr = XML.toString(jsonObject);
return xmlStr;
}
3.参考demo
package com.boclink.utils;
import org.json.JSONObject;
import org.json.XML;
/**
* @Description: 报文格式转换
* @Class: MessageConversionUtils
* @Author: Yiang37
* @Date: 2021/8/12 10:36
* @Version: 1.0
*/
public class MessageConversionUtils {
// 头部追加 <?xml version="1.0" encoding="UTF-8"?>
final static String HEAD = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
// abc标签后追加 locale=" zh_CN"
final static String BLANK = " ";
final static String ADD_STR = "locale=\"zh_CN\"";
/**
* @Description: XML字符串 -> JSON字符串
* @Author: Yiang37
* @Date: 2021/08/12 10:53:47
* @Version: 1.0
*/
public static String xmlToJson(String xmlStr) {
JSONObject jsonObject = XML.toJSONObject(xmlStr);
return jsonObject.toString();
}
/**
* @Description: JSON字符串 - > XML字符串
* @Author: Yiang37
* @Date: 2021/08/12 10:54:12
* @Version: 1.0
*/
public static String jsonToXml(String jsonStr) {
JSONObject jsonObject = new JSONObject(jsonStr);
String xmlStr = XML.toString(jsonObject);
// abc标签后追加ADD_STR
String abc = appendXmlTagCon(xmlStr, "abc", ADD_STR);
return HEAD + abc;
}
/**
* @Description: xml的指定标签后 追加指定字符串
* @Author: Yiang37
* @Date: 2021/08/12 11:12:28
* @Version: 1.0
*/
public static String appendXmlTagCon(String xmlStr, String tagStr, String appendStr) {
// 计算追加的位置:在标签之后
int i = xmlStr.indexOf(tagStr) + tagStr.length();
// 插入追加的字符串
StringBuilder builder = new StringBuilder(xmlStr).insert(i, BLANK + appendStr);
return builder + "";
}
}
原文地址:https://www.cnblogs.com/yang37/p/15131963.html
- WordPress自带TinyMCE编辑器相关功能增强
- 联众互动收购3家棋牌游戏公司,其域名买自蔡文胜手中
- 未来有什么工作绝对不会被人工智能取代
- WordPress在RSS Feed 中输出版权信息
- WordPress免插件仅代码实现文章浏览次数的方法(2)
- 苹果被告了,但网友们却觉得一点也不亏!
- Castle 整合.NET Remoting
- 这三要素,让区块链技术成为颠覆世界的技术
- 代码实现 WordPress 反垃圾评论功能
- Flash/Flex学习笔记(39):弹性运动
- 兼容Mono的下一代云环境Web开发框架ASP.NET vNext
- ASP.NET vNext 概述
- 丰富排版页面——为你的wordpress主题添加短代码形式美化框
- 开放式管理基础结构 OMI
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Ansible Playbook 初识
- Ansible Playbook 变量与 register 详解
- 初探 Spark ML 第一部分
- Ansible Facts 变量详解 添加用户账号Ansible 配置清单Inventory
- Ansible playbook 编程
- 前端工程师自检清单73答
- Ansible playbook Vault 加密
- MySQL主从复制
- Ansible Jinja2 模板使用
- 自动化运维工具Ansible之Tests测验详解
- 自动化运维工具Ansible之Roles角色详解
- 全网最酷南极路线图
- 误删cloudera-scm-agent恢复
- 自动化运维工具Ansible之LNMP实践环境部署
- 如何在Windows下使用NCL