`

JSON — json-lib ——— XML与json互转 实例代码片断(二)

阅读更多

Snippets 

From XML to JSON

  1. XML to JSONObject

From JSON to XML

JSONObject to XML

  1. String str = "{'name':'JSON','integer':1,'double':2.0,'boolean':true,'nested':{'id':42},'array':[1,2,3]}";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. String xml = xmlSerializer.write( json );   
  5. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <o>  
  3.    <boolean type="boolean">true</boolean>  
  4.    <double type="number">2.0</double>  
  5.    <integer type="number">1</integer>  
  6.    <name type="string">JSON</name>  
  7.    <nested class="object">  
  8.       <id type="number">42</id>  
  9.    </nested>  
  10.    <array class="array">  
  11.       <e type="number">1</e>  
  12.       <e type="number">2</e>  
  13.       <e type="number">3</e>  
  14.    </array>  
  15. </o>  
[Index|From JSON to XML]

JSONObject to XML (no type hints)

  1. String str = "{'name':'JSON','integer':1,'double':2.0,'boolean':true,'nested':{'id':42},'array':[1,2,3]}";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. xmlSerializer.setTypeHintsEnabled( false );   
  5. String xml = xmlSerializer.write( json );   
  6. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <o>  
  3.    <boolean>true</boolean>  
  4.    <double>2.0</double>  
  5.    <integer>1</integer>  
  6.    <name>JSON</name>  
  7.    <nested>  
  8.       <id>42</id>  
  9.    </nested>  
  10.    <array>  
  11.       <e>1</e>  
  12.       <e>2</e>  
  13.       <e>3</e>  
  14.    </nested>  
  15. </o>  
[Index|From JSON to XML]

JSONObject to XML (with json prefix)

  1. String str = "{'name':'JSON','integer':1,'double':2.0,'boolean':true,'nested':{'id':42},'array':[1,2,3]}";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. xmlSerializer.setTypeHintsCompatibility( false );   
  5. String xml = xmlSerializer.write( json );   
  6. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <o>  
  3.    <boolean json_type="boolean">true</boolean>  
  4.    <double json_type="number">2.0</double>  
  5.    <integer json_type="number">1</integer>  
  6.    <name json_type="string">JSON</name>  
  7.    <nested json_class="object">  
  8.       <id json_type="number">42</id>  
  9.    </nested>  
  10.    <array json_class="array">  
  11.       <e json_type="number">1</e>  
  12.       <e json_type="number">2</e>  
  13.       <e json_type="number">3</e>  
  14.    </array>  
  15. </o>  
[Index|From JSON to XML]

JSONObject to XML (change node names)

  1. String str = "{'name':'JSON','integer':1,'double':2.0,'boolean':true,'nested':{'id':42},'array':[1,2,3]}";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. xmlSerializer.setRootName( "root" );   
  5. xmlSerializer.setElementName( "element" );   
  6. String xml = xmlSerializer.write( json );   
  7. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <root>  
  3.    <boolean type="boolean">true</boolean>  
  4.    <double type="number">2.0</double>  
  5.    <integer type="number">1</integer>  
  6.    <name type="string">JSON</name>  
  7.    <nested class="object">  
  8.       <id type="number">42</id>  
  9.    </nested>  
  10.    <array class="array">  
  11.       <element type="number">1</e>  
  12.       <element type="number">2</e>  
  13.       <element type="number">3</e>  
  14.    </array>  
  15. </root>  
[Index|From JSON to XML]

JSONArray to XML

  1. String str = "['JSON', 1, 2.0, true, {'id':42}, [1,2,3]]";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. String xml = xmlSerializer.write( json );   
  5. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <a>  
  3.    <e type="string">JSON</e>  
  4.    <e type="number">1</e>  
  5.    <e type="number">2.0</e>  
  6.    <e type="boolean">true</e>  
  7.    <e class="object">  
  8.       <id type="number">42</id>  
  9.    </e>  
  10.    <e class="array">  
  11.       <e type="number">1</e>  
  12.       <e type="number">2</e>  
  13.       <e type="number">3</e>  
  14.    </e>  
  15. </a>  
[Index|From JSON to XML]

JSONArray to XML (no type hints)

  1. String str = "['JSON', 1, 2.0, true, {'id':42}, [1,2,3]]";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. xmlSerializer.setTypeHintsEnabled( false );   
  5. String xml = xmlSerializer.write( json );   
  6. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <a>  
  3.    <e>JSON</e>  
  4.    <e>1</e>  
  5.    <e>2.0</e>  
  6.    <e>true</e>  
  7.    <e>  
  8.       <id>42</id>  
  9.    </e>  
  10.    <e>  
  11.       <e>1</e>  
  12.       <e>2</e>  
  13.       <e>3</e>  
  14.    </e>  
  15. </a>  
[Index|From JSON to XML]

JSONArray to XML (with json prefix)

  1. String str = "['JSON', 1, 2.0, true, {'id':42}, [1,2,3]]";   
  2. JSON json = JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. xmlSerializer.setTypeHintsCompatibility( false );   
  5. String xml = xmlSerializer.write( json );   
  6. System.out.println(xml);   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <a>  
  3.    <e json_type="string">JSON</e>  
  4.    <e json_type="number">1</e>  
  5.    <e json_type="number">2.0</e>  
  6.    <e json_type="boolean">true</e>  
  7.    <e json_class="object">  
  8.       <id json_type="number">42</id>  
  9.    </e>  
  10.    <e json_class="array">  
  11.       <e json_type="number">1</e>  
  12.       <e json_type="number">2</e>  
  13.       <e json_type="number">3</e>  
  14.    </e>  
  15. </a>  
[Index|From JSON to XML]

Flatten JSONArray into parent

  1. String str = "{'number': [1,2,3]}";   
  2. JSONObject json = (JSONObject) JSONSerializer.toJSON( str );   
  3. XMLSerializer xmlSerializer = new XMLSerializer();   
  4. xmlSerializer.setTypeHintsEnabled( false );   
  5. String xml = xmlSerializer.write( json );   
  6. System.out.println( xml );   
  7. json.getJSONArray( "number" ).setExpandElements( true );   
  8. xml = xmlSerializer.write( json );   
  9. System.out.println( xml );   
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <o>  
  3.    <number>  
  4.       <e>1</e>  
  5.       <e>2</e>  
  6.       <e>3</e>  
  7.    </number>  
  8. </o>  
  9.   
  10. <?xml version="1.0" encoding="UTF-8"?>  
  11. <o>  
  12.    <number>1</number>  
  13.    <number>2</number>  
  14.    <number>3</number>  
  15. </o>  
[Index|From JSON to XML]

From XML to JSON

XML to JSONObject

  1. <o number="1">  
  2.    first   
  3.    <string>json</string>  
  4.    <array>  
  5.       <e>1</e>  
  6.       <e>true</e>  
  7.    </array>  
  8. </o>  
  1. String xml = ...   
  2. XMLSerializer xmlSerializer = new XMLSerializer();   
  3. JSON json = xmlSerializer.read( xml );   
  4. System.out.println( json.toString(2) );   
  1. {   
  2.   "string""json",   
  3.   "#text""first",   
  4.   "array":   [   
  5.     "1",   
  6.     "true"  
  7.   ],   
  8.   "@number""1"  
  9. }   
[Index|From XML to JSON]
分享到:
评论
1 楼 xunke515 2013-04-11  
学习了~
感谢分享.

相关推荐

    json-lib-2.4-jdk15.jar下载

    1. 简单易用:json-lib的API简单易于使用,一般只需要一行或两行代码就可以完成Java对象和JSON的相互转换。 2. 支持对象图:可以将复杂的对象层次结构与JSON相互转换,支持List、Map、数组等类型。 3. 支持注解:支持@...

    json-lib-2.4-jdk15.jar

    4. **XML和JSON之间的转换**:json-lib还支持XML和JSON之间的互转,这对于处理既有XML又有JSON数据的系统非常有用。 5. **自定义转换规则**:用户可以通过实现`JsonConfig`类中的方法,自定义Java对象到JSON的转换...

    json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar

    在Java世界里,`json-lib-2.1.jar` 是一个用于处理JSON的库,它提供了一系列的方法来将Java对象转换为JSON格式,以及将JSON字符串反序列化回Java对象。这个库支持多种Java类型,包括基本类型、集合、Map、自定义Java...

    json-lib-2.4-jdk15及其依赖包

    1、json的核心包:json-lib-2.4-jdk15.jar; 2、json-lib-2.4-jdk15.jar依赖的jar包:commons-beanutils-1.9.3.jar,commons-collections-3.2.2.jar,commons-lang-2.6.jar,commons-logging-1.2.jar,ezmorph-1.0.6...

    json-lib-2.3-jdk15基础jar包合辑

    3. **XML与JSON互转**:JSON Lib还提供了XML和JSON之间的转换功能,使得两种数据交换格式可以灵活切换。 4. **处理复杂结构**:支持处理嵌套的JSON对象和数组,可以轻松地处理复杂的JSON数据结构。 ### 示例代码 ``...

    json-lib-2.4-jdk15和全部依赖jar包

    2. **XML与JSON互转**:除了基本的Java对象与JSON之间的转换,`json-lib`还提供了XML到JSON以及JSON到XML的转换功能,使得两种数据交换格式可以无缝对接。 3. **支持多种数据类型**:`json-lib`不仅支持基本的数据...

    json-lib-2.2.2-jdk15.jar

    2. **XML与JSON互转**:json-lib还支持XML与JSON之间的转换,这在处理不同数据格式时非常有用。 3. **自定义序列化**:通过实现JSONAware接口或使用JSONSerializer的transform方法,开发者可以定制JSON序列化过程,...

    json-lib-2.4和相应的依赖包

    3. **XML和JSON之间的转换**:json-lib还支持XML与JSON之间的互换,这对于处理既有XML又有JSON的混合环境非常有用。 4. **支持多种Java类型**:json-lib支持包括基本类型、集合、数组、日期、自定义对象等多种Java...

    json-lib-2.3-jdk15开发包和所有依赖包

    4. **XML与JSON互转**:除了基本的JSON操作,`json-lib`还提供了XML与JSON之间的转换功能,这对于需要在XML和JSON之间进行数据交换的应用非常有用。 5. **依赖包的集成**:`json-lib-2.3-jdk15`开发包包含了所有...

    json-lib-2.2.3-jdk15.jar

    JSON-lib是一个Java库,它提供了将Java对象转换为JSON表示以及从JSON文本反序列化回Java对象的功能。该库名为`json-lib-2.2.3-jdk15.jar`,特别针对Java 1.5版本进行了优化。 JSON-lib的主要特点和功能包括: 1. *...

    json-lib-2.4-jdk15.jar及其相关依赖

    4. **XML到JSON**: `json-lib`还支持XML数据到JSON的转换,这对于在不同的数据格式之间进行转换非常有用。 `json-lib`的使用方法通常包括以下步骤: 1. **引入依赖**: 首先,你需要在项目中引入`json-lib-2.4-jdk...

    JSON-lib包json-lib-0.8.jar和json-lib-0.9.jar包

    JSON-lib是一个Java库,用于将Java对象转换为JSON(JavaScript Object Notation)格式,以及将JSON数据转换回Java对象。这个库提供了多种方法来处理JSON数据,使得在Java应用程序中与JSON交互变得更加简单。JSON是一...

    json-lib-2.4-jdk15.jar所需全部JAR包_JSON_

    `json-lib`是一个Java库,它提供了一种将Java对象转换为JSON表示,以及将JSON内容反序列化回Java对象的机制。`json-lib-2.4-jdk15.jar`是该库的一个特定版本,适用于JDK 1.5环境。这个版本的jar文件包含了处理JSON...

    json-lib-2.4 jar 程序文件

    3. **JSON与Java对象的互转**:JSON-Lib支持多种Java类型,包括基本类型、集合、Map等。例如,`String jsonString = obj.toString();`将JSON对象转换为字符串,而`Map, Object&gt; map = JSONObject.toBean(JSONObject....

    使用json-lib实现json与Java对象的互转

    要使用 `json-lib` 实现 JSON 与 Java 对象的互转,首先需要在项目中引入该库。如果你使用的是 Maven,可以在 `pom.xml` 文件中添加如下依赖: ```xml &lt;groupId&gt;net.sf.json-lib&lt;/groupId&gt; &lt;artifactId&gt;json-lib...

    json-lib-2.4-jdk15.jar包

    json-lib-2.4-jdk15.jar json-lib-2.4-jdk15-sources.jar json-lib-2.4-jdk15-javadoc.jar 包含文件有:json-lib-2.4-jdk15.jar json-lib-2.4-jdk15-sources.jar json-lib-2.4-jdk15-javadoc.jar

    json-lib-2.1

    里面包含json-lib所需的全部jar文件. json-lib-2.1-jdk15.jar ezmorph-1.0.3.jar commons-beanutils.jar commons-collections-3.2.1.jar commons-lang-2.4.jar commons-logging-1.1.1.jar

    json-lib-2.3.jar

    总之,json-lib是一个强大的JSON处理库,它简化了Java应用与JSON数据的交互,无论是序列化Java对象为JSON,还是将JSON数据还原为Java对象,都提供了便捷的API。通过对`JsonObject.fromObject()`和`JsonArray.from...

    json架包,包好json-lib-2.2.3-jdk13.jar,json-lib-2.4-jdk14.jar以及附带的支持包

    json架包,包好json-lib-2.2.3-jdk13.jar,json-lib-2.4-jdk14.jar以及附带的支持包ezmorph-1.0.6.jar,commons-logging.jar,commons-lang.jar等

    json-lib-2.4-jdk15-sources.jar

    2. **XML与JSON的互转**:在许多情况下,需要在JSON和XML之间进行数据转换,`json-lib`提供了这样的功能,使得两种数据格式可以无缝切换。 3. **支持不同版本的JDK**:`json-lib`针对不同的JDK版本(如jdk1.5、jdk...

Global site tag (gtag.js) - Google Analytics