JSONObject和XML和java等之间的转换

本文介绍如何在Java中实现JSON与XML之间的相互转换,并提供了具体的代码示例。包括从Java对象生成JSON字符串、从JSON字符串解析到Java对象、将JSON转换为XML以及将XML转换为JSON等操作。
<p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"><span style="margin: 0px; padding: 0px;">JSON</span>格式:</p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;">{"password":"123456","username":"张三"}</p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"><span style="margin: 0px; padding: 0px;">
</span></p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"><span style="margin: 0px; padding: 0px;">xml格式举例:</span></p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"><?xml version="1.0" encoding="UTF-8"?> <br style="margin: 0px; padding: 0px;" /><user_info></p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"><password>123456</password></p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"><username>张三</username></p><p style="margin: 10px auto; padding-top: 0px; padding-bottom: 0px; font-family: 微软雅黑; font-size: 13.92px; line-height: 20.88px;"></user_info></p>
package json;

import net.sf.json.JSON;
import net.sf.json.JSONObject;
import net.sf.json.xml.XMLSerializer;

public class JSONObject_1_3 {
public static void javaToJSON() {
System.out.println("java代码封装为json字符串");
JSONObject jsonObj = new JSONObject();
jsonObj.put("username", "张三");
jsonObj.put("password", "123456");
System.out.println("java--->json \n" + jsonObj.toString());
}

public static void jsonToJAVA() {
System.out.println("json字符串转java代码");
String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";
JSONObject jsonObj = JSONObject.fromString(jsonStr);
String username = jsonObj.getString("username");
String password = jsonObj.optString("password");
System.out.println("json--->java\n username=" + username
+ "\t password=" + password);
}

public static void jsonToXML() {
System.out.println("json字符串转xml字符串");
String jsonStr = "{\"password\":\"123456\",\"username\":\"张三\"}";
JSONObject json = JSONObject.fromString(jsonStr);
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setRootName("user_info");
xmlSerializer.setTypeHintsEnabled(false);
String xml = xmlSerializer.write(json);
System.out.println("json--->xml \n" + xml);
}

public static void javaBeanToJSON() {
System.out.println("javabean转json字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("123456");
JSONObject json = JSONObject.fromBean(userInfo);
System.out.println("javabean--->json \n" + json.toString());
}

public static void javaBeanToXML() {
System.out.println("javabean转xml字符串");
UserInfo userInfo = new UserInfo();
userInfo.setUsername("张三");
userInfo.setPassword("123456");
JSONObject json = JSONObject.fromBean(userInfo);
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(json, "UTF-8");
System.out.println("javabean--->xml \n" + xml);
}

public static void xmlToJSON(){
System.out.println("xml字符串转json字符串");
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><user_info><password>123456</password><username>张三</username></user_info>";
JSON json=XMLSerializer.read(xml);
System.out.println("xml--->json \n"+json.toString());
}

public static void main(String args[]) {
// javaToJSON();
// jsonToJAVA();
// jsonToXML();
// javaBeanToJSON();
// javaBeanToXML();
xmlToJSON();
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值