在Java中将JSON转换为XML [英] Converting JSON to XML in Java

查看:162
本文介绍了在Java中将JSON转换为XML的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是json的新手。我有一个程序从json对象生成xml。

I am new to json. I am having a program to generate xml from json object.

String str = "{'name':'JSON','integer':1,'double':2.0,'boolean':true,'nested':{'id':42},'array':[1,2,3]}";  
    JSON json = JSONSerializer.toJSON( str );  
    XMLSerializer xmlSerializer = new XMLSerializer();  
    xmlSerializer.setTypeHintsCompatibility( false );  
    String xml = xmlSerializer.write( json );  
    System.out.println(xml); 

输出为:

<?xml version="1.0" encoding="UTF-8"?>
<o><array json_class="array"><e json_type="number">1</e><e json_type="number">2</e><e json_type="number">3</e></array><boolean json_type="boolean">true</boolean><double json_type="number">2.0</double><integer json_type="number">1</integer><name json_type="string">JSON</name><nested json_class="object"><id json_type="number">42</id></nested></o>

我最大的问题是如何编写自己的属性而不是json_type =number并写我的自己的子元素。

my biggest problem is how to write my own attributes instead of json_type="number" and also writing my own sub elements like .

推荐答案

使用json.org中的(优秀)JSON-Java库然后

Use the (excellent) JSON-Java library from json.org then

JSONObject json = new JSONObject(str);
String xml = XML.toString(json);

toString 可以提供第二个参数来提供XML根节点的名称。

toString can take a second argument to provide the name of the XML root node.

此库还可以使用 XML.toJSONObject(java.lang.String string)将XML转换为JSON )

检查 Javadoc

指向 github存储库的链接

POM

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20160212</version>
</dependency>

使用新链接更新的原始帖子

这篇关于在Java中将JSON转换为XML的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆