From JSON to Java /XML

 From JSON to Java
1.JSONObject to DynaBean
2.JSONObject to JavaBean
3.JSONArray to List
4.JSONArray to array
5.JSONArray to array (type conversion)
6.JSONObject to JavaBean, exclude properties with filters
From JSON to XML
1.JSONObject to XML
2.JSONObject to XML (no type hints)
3.JSONObject to XML (with json prefix)
4.JSONObject to XML (change node names)
5.JSONArray to XML
6.JSONArray to XML (no type hints)
7.JSONArray to XML (with json prefix)
8.Flatten JSONArray into parent
From XML to JSON
1.XML to JSONObject
Groovy Support
1.Using the JsonGroovyBuilder
JRuby Support
1.Creating a JSONObject
2.Append elements to JSONObject with << (array)
3.Append elements to JSONObject with << (hash)
From Java to JSON
Creating a JSONObject from scratch
1.JSONObject jsonObject = new JSONObject() 
2.                              .element( "string", "JSON" ) 
3.                              .element( "integer", "1" ) 
4.                              .element( "double", "2.0" ) 
5.                              .element( "boolean", "true" ); 
6.assertEquals( "JSON", jsonObject.getString("string") );       
7.assertEquals( 1, jsonObject.getInt("integer") );       
8.assertEquals( 2.0d, jsonObject.getDouble("double"), 0d );       
9.assertTrue( jsonObject.getBoolean("boolean") );       
JSONObject jsonObject = new JSONObject()
                              .element( "string", "JSON" )
                              .element( "integer", "1" )
                              .element( "double", "2.0" )
                              .element( "boolean", "true" );
assertEquals( "JSON", jsonObject.getString("string") );     
assertEquals( 1, jsonObject.getInt("integer") );     
assertEquals( 2.0d, jsonObject.getDouble("double"), 0d );     
assertTrue( jsonObject.getBoolean("boolean") );     
[Index |From Java to JSON ]
Creating a JSONObject from a JSON formatted string
1.String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}"; 
2.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str ); 
3.assertEquals( "JSON", jsonObject.getString("string") );       
4.assertEquals( 1, jsonObject.getInt("integer") );       
5.assertEquals( 2.0d, jsonObject.getDouble("double"), 0d );       
6.assertTrue( jsonObject.getBoolean("boolean") );       
String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}";
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );
assertEquals( "JSON", jsonObject.getString("string") );     
assertEquals( 1, jsonObject.getInt("integer") );     
assertEquals( 2.0d, jsonObject.getDouble("double"), 0d );     
assertTrue( jsonObject.getBoolean("boolean") );     
[Index |From Java to JSON ]
Creating a JSONObject from a Map
1.Map map = new HashMap(); 
2.map.put( "string", "JSON" ); 
3.map.put( "integer", "1" ); 
4.map.put( "double", "2.0" ); 
5.map.put( "boolean", "true" ); 
6.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( map ); 
7.assertEquals( "JSON", jsonObject.getString("string") );       
8.assertEquals( 1, jsonObject.getInt("integer") );       
9.assertEquals( 2.0d, jsonObject.getDouble("double"), 0d );       
10.assertTrue( jsonObject.getBoolean("boolean") );       
Map map = new HashMap();
map.put( "string", "JSON" );
map.put( "integer", "1" );
map.put( "double", "2.0" );
map.put( "boolean", "true" );
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( map );
assertEquals( "JSON", jsonObject.getString("string") );     
assertEquals( 1, jsonObject.getInt("integer") );     
assertEquals( 2.0d, jsonObject.getDouble("double"), 0d );     
assertTrue( jsonObject.getBoolean("boolean") );     
[Index |From Java to JSON ]
Creating a JSONObject from a JavaBean
1.public class MyJavaBean { 
2.   private String string; 
3.   private int integer; 
4.   private double dooble; 
5.   private boolean bool; 
6. 
7.   // getters & setters 
8.} 
9. 
10.MyJavaBean bean = new MyJavaBean(); 
11.bean.setString( "JSON" ); 
12.bean.setInteger( 1 ); 
13.bean.setDooble( 2.0d ); 
14.bean.setBool( true ); 
15.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( bean ); 
16.assertEquals( "JSON", jsonObject.getString("string") );       
17.assertEquals( 1, jsonObject.getInt("integer") );       
18.assertEquals( 2.0d, jsonObject.getDouble("dooble"), 0d );       
19.assertTrue( jsonObject.getBoolean("bool") );       
public class MyJavaBean {
   private String string;
   private int integer;
   private double dooble;
   private boolean bool;

   // getters & setters
}

MyJavaBean bean = new MyJavaBean();
bean.setString( "JSON" );
bean.setInteger( 1 );
bean.setDooble( 2.0d );
bean.setBool( true );
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( bean );
assertEquals( "JSON", jsonObject.getString("string") );     
assertEquals( 1, jsonObject.getInt("integer") );     
assertEquals( 2.0d, jsonObject.getDouble("dooble"), 0d );     
assertTrue( jsonObject.getBoolean("bool") );     
[Index |From Java to JSON ]
Creating a JSONArray from scratch
1.JSONArray jsonArray = new JSONArray() 
2.                              .element( "JSON" ) 
3.                              .element( "1" ) 
4.                              .element( "2.0" ) 
5.                              .element( "true" ); 
6.assertEquals( "JSON", jsonArray.getString(0) );       
7.assertEquals( 1, jsonArray.getInt(1) );       
8.assertEquals( 2.0d, jsonArray.getDouble(2), 0d );       
9.assertTrue( jsonArray.getBoolean(3) );       
JSONArray jsonArray = new JSONArray()
                              .element( "JSON" )
                              .element( "1" )
                              .element( "2.0" )
                              .element( "true" );
assertEquals( "JSON", jsonArray.getString(0) );     
assertEquals( 1, jsonArray.getInt(1) );     
assertEquals( 2.0d, jsonArray.getDouble(2), 0d );     
assertTrue( jsonArray.getBoolean(3) );     
[Index |From Java to JSON ]
Creating a JSONArray from a JSON formatted string
1.String str = "['JSON', 1, 2.0, true]"; 
2.JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( str ); 
3.assertEquals( "JSON", jsonArray.getString(0) );       
4.assertEquals( 1, jsonArray.getInt(1) );       
5.assertEquals( 2.0d, jsonArray.getDouble(2), 0d );       
6.assertTrue( jsonArray.getBoolean(3) );       
String str = "['JSON', 1, 2.0, true]";
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( str );
assertEquals( "JSON", jsonArray.getString(0) );     
assertEquals( 1, jsonArray.getInt(1) );     
assertEquals( 2.0d, jsonArray.getDouble(2), 0d );     
assertTrue( jsonArray.getBoolean(3) );     
[Index |From Java to JSON ]
Creating a JSONArray from a Collection
1.List list = new ArrayList(); 
2.list.add( "JSON" ); 
3.list.add( "1" ); 
4.list.add( "2.0" ); 
5.list.add( "true" ); 
6.JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( list ); 
7.assertEquals( "JSON", jsonArray.getString(0) );       
8.assertEquals( 1, jsonArray.getInt(1) );       
9.assertEquals( 2.0d, jsonArray.getDouble(2), 0d );       
10.assertTrue( jsonArray.getBoolean(3) );       
List list = new ArrayList();
list.add( "JSON" );
list.add( "1" );
list.add( "2.0" );
list.add( "true" );
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( list );
assertEquals( "JSON", jsonArray.getString(0) );     
assertEquals( 1, jsonArray.getInt(1) );     
assertEquals( 2.0d, jsonArray.getDouble(2), 0d );     
assertTrue( jsonArray.getBoolean(3) );     
[Index |From Java to JSON ]
Creating a JSONArray from an array
1.Object[] array = new Object[]{ "JSON", "1", "2.0", "true" }; 
2.JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( array ); 
3.assertEquals( "JSON", jsonArray.getString(0) );       
4.assertEquals( 1, jsonArray.getInt(1) );       
5.assertEquals( 2.0d, jsonArray.getDouble(2), 0d );       
6.assertTrue( jsonArray.getBoolean(3) );       
Object[] array = new Object[]{ "JSON", "1", "2.0", "true" };
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( array );
assertEquals( "JSON", jsonArray.getString(0) );     
assertEquals( 1, jsonArray.getInt(1) );     
assertEquals( 2.0d, jsonArray.getDouble(2), 0d );     
assertTrue( jsonArray.getBoolean(3) );     
[Index |From Java to JSON ]
JavaScript functions
1.String str = "{'func': function( param ){ doSomethingWithParam(param); }}"; 
2.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str ); 
3.JSONFunction func = (JSONFunction) jsonObject.get("func"); 
4.ArrayAssertions.assertEquals( new String[]{"param"}, func.getParams() ); 
5.assertEquals( "doSomethingWithParam(param);", func.getText() ); 
String str = "{'func': function( param ){ doSomethingWithParam(param); }}";
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );
JSONFunction func = (JSONFunction) jsonObject.get("func");
ArrayAssertions.assertEquals( new String[]{"param"}, func.getParams() );
assertEquals( "doSomethingWithParam(param);", func.getText() );
[Index |From Java to JSON ]
Exclude properties
1.String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}"; 
2.JsonConfig jsonConfig = new JsonConfig(); 
3.jsonConfig.setExcludes( new String[]{ "double", "boolean" } ); 
4.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str, jsonConfig ); 
5.assertEquals( "JSON", jsonObject.getString("string") );       
6.assertEquals( 1, jsonObject.getInt("integer") );       
7.assertFalse( jsonObject.has("double") );    
8.assertFalse( jsonObject.has("boolean") );    
String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}";
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setExcludes( new String[]{ "double", "boolean" } );
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str, jsonConfig );
assertEquals( "JSON", jsonObject.getString("string") );     
assertEquals( 1, jsonObject.getInt("integer") );     
assertFalse( jsonObject.has("double") );  
assertFalse( jsonObject.has("boolean") );  
[Index |From Java to JSON ]
Exclude properties (with filters)
1.String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}"; 
2.JsonConfig jsonConfig = new JsonConfig(); 
3.jsonConfig.setJsonPropertyFilter( new PropertyFilter(){   
4.   public boolean apply( Object source, String name, Object value ) {   
5.      if( "double".equals(value) || "boolean".equals(value) ){   
6.         return true;   
7.      }   
8.      return false;   
9.   }   
10.});   
11.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str, jsonConfig ); 
12.assertEquals( "JSON", jsonObject.getString("string") );       
13.assertEquals( 1, jsonObject.getInt("integer") );       
14.assertFalse( jsonObject.has("double") );    
15.assertFalse( jsonObject.has("boolean") );    
String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}";
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setJsonPropertyFilter( new PropertyFilter(){ 
   public boolean apply( Object source, String name, Object value ) { 
      if( "double".equals(value) || "boolean".equals(value) ){ 
         return true; 
      } 
      return false; 
   } 
}); 
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str, jsonConfig );
assertEquals( "JSON", jsonObject.getString("string") );     
assertEquals( 1, jsonObject.getInt("integer") );     
assertFalse( jsonObject.has("double") );  
assertFalse( jsonObject.has("boolean") );  
[Index |From Java to JSON ]
From JSON to Java
JSONObject to DynaBean
1.String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}"; 
2.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str ); 
3.DynaBean bean = (DynaBean) JSONSerializer.toJava( jsonObject ); 
4.assertEquals( "JSON", bean.get("string") );       
5.assertEquals( new Integer(1), bean.get("integer") );       
6.assertEquals( new Double(2.0), bean.get("double") );       
7.assertEquals( Boolean.TRUE, bean.get("boolean") );    
String str = "{'string':'JSON', 'integer': 1, 'double': 2.0, 'boolean': true}";
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( str );
DynaBean bean = (DynaBean) JSONSerializer.toJava( jsonObject );
assertEquals( "JSON", bean.get("string") );     
assertEquals( new Integer(1), bean.get("integer") );     
assertEquals( new Double(2.0), bean.get("double") );     
assertEquals( Boolean.TRUE, bean.get("boolean") );  
[Index |From JSON to Java ]
JSONObject to JavaBean
1.public class MyJavaBean { 
2.   private String string; 
3.   private int integer; 
4.   private double dooble; 
5.   private boolean bool; 
6. 
7.   // getters & setters 
8.} 
9. 
10.MyJavaBean bean = new MyJavaBean(); 
11.bean.setString( "JSON" ); 
12.bean.setInteger( 1 ); 
13.bean.setDooble( 2.0d ); 
14.bean.setBool( true ); 
15.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( bean ); 
16.JsonConfig jsonConfig = new JsonConfig(); 
17.jsonConfig.setRootClass( MyJavaBean.class ); 
18.MyJavaBean bean2 = (MyJavaBean) JSONSerializer.toJava( jsonObject, jsonConfig ); 
19.assertNotNull( bean2 ); 
20.assertEquals( "JSON", bean2.getString() ); 
21.assertEquals( 1, bean2.getInteger() ); 
22.assertEquals( 2.0d, bean2.getDooble(), 0d ); 
23.assertTrue( bean2.getBool() ); 
public class MyJavaBean {
   private String string;
   private int integer;
   private double dooble;
   private boolean bool;

   // getters & setters
}

MyJavaBean bean = new MyJavaBean();
bean.setString( "JSON" );
bean.setInteger( 1 );
bean.setDooble( 2.0d );
bean.setBool( true );
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( bean );
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setRootClass( MyJavaBean.class );
MyJavaBean bean2 = (MyJavaBean) JSONSerializer.toJava( jsonObject, jsonConfig );
assertNotNull( bean2 );
assertEquals( "JSON", bean2.getString() );
assertEquals( 1, bean2.getInteger() );
assertEquals( 2.0d, bean2.getDooble(), 0d );
assertTrue( bean2.getBool() );
[Index |From JSON to Java ]
JSONArray to List
1.List input = new ArrayList(); 
2.input.add( "JSON" ); 
3.input.add( "1" ); 
4.input.add( "2.0" ); 
5.input.add( "true" ); 
6.JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( input ); 
7.List output = (List) JSONSerializer.toJava( jsonArray ); 
8.ArrayAssertions.assertEquals( input, output ); 
List input = new ArrayList();
input.add( "JSON" );
input.add( "1" );
input.add( "2.0" );
input.add( "true" );
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( input );
List output = (List) JSONSerializer.toJava( jsonArray );
ArrayAssertions.assertEquals( input, output );
[Index |From JSON to Java ]
JSONArray to array
1.List input = new ArrayList(); 
2.input.add( "JSON" ); 
3.input.add( "1" ); 
4.input.add( "2.0" ); 
5.input.add( "true" ); 
6.JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( input ); 
7.JsonConfig jsonConfig = new JsonConfig(); 
8.jsonConfig.setArrayMode( JsonConfig.MODE_OBJECT_ARRAY ); 
9.Object[] output = (Object[]) JSONSerializer.toJava( jsonArray, jsonConfig ); 
10.Object[] expected = new Object[]{ "JSON", "1", "2.0", "true" }; 
11.ArrayAssertions.assertEquals( expected, output); 
List input = new ArrayList();
input.add( "JSON" );
input.add( "1" );
input.add( "2.0" );
input.add( "true" );
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( input );
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setArrayMode( JsonConfig.MODE_OBJECT_ARRAY );
Object[] output = (Object[]) JSONSerializer.toJava( jsonArray, jsonConfig );
Object[] expected = new Object[]{ "JSON", "1", "2.0", "true" };
ArrayAssertions.assertEquals( expected, output);
[Index |From JSON to Java ]
JSONArray to array (type conversion)
1.List input = new ArrayList(); 
2.input.add( "1" ); 
3.input.add( "2" ); 
4.input.add( "3.0" ); 
5.JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( input ); 
6.JsonConfig jsonConfig = new JsonConfig(); 
7.jsonConfig.setArrayMode( JsonConfig.MODE_OBJECT_ARRAY ); 
8.jsonConfig.setRootClass( Integer.TYPE ); 
9.int[] output = (int[]) JSONSerializer.toJava( jsonArray, jsonConfig ); 
10.int[] expected = new int[]{ 1, 2, 3 }; 
11.ArrayAssertions.assertEquals( expected, output); 
List input = new ArrayList();
input.add( "1" );
input.add( "2" );
input.add( "3.0" );
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON( input );
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setArrayMode( JsonConfig.MODE_OBJECT_ARRAY );
jsonConfig.setRootClass( Integer.TYPE );
int[] output = (int[]) JSONSerializer.toJava( jsonArray, jsonConfig );
int[] expected = new int[]{ 1, 2, 3 };
ArrayAssertions.assertEquals( expected, output);
[Index |From JSON to Java ]
JSONObject to JavaBean, exclude properties with filters
1.public class MyJavaBean { 
2.   private String string; 
3.   private int integer; 
4.   private double dooble = 0d; 
5.   private boolean bool; 
6. 
7.   // getters & setters 
8.} 
9. 
10.MyJavaBean bean = new MyJavaBean(); 
11.bean.setString( "JSON" ); 
12.bean.setInteger( 1 ); 
13.bean.setDooble( 2.0d ); 
14.bean.setBool( true ); 
15.JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( bean ); 
16.JsonConfig jsonConfig = new JsonConfig(); 
17.jsonConfig.setRootClass( MyJavaBean.class ); 
18.jsonConfig.setJavaPropertyFilter( new PropertyFilter(){   
19.   public boolean apply( Object source, String name, Object value ) {   
20.      if( "bool".equals( name ) || "dooble".equals( name ) ){   
21.         return true;   
22.      }   
23.      return false;   
24.   }   
25.});  
26.MyJavaBean bean2 = (MyJavaBean) JSONSerializer.toJava( jsonObject, jsonConfig ); 
27.assertNotNull( bean2 ); 
28.assertEquals( "JSON", bean2.getString() ); 
29.assertEquals( 1, bean2.getInteger() ); 
30.assertEquals( 0d, bean2.getDooble(), 0d ); 
31.assertFalse( bean2.getBool() ); 
public class MyJavaBean {
   private String string;
   private int integer;
   private double dooble = 0d;
   private boolean bool;

   // getters & setters
}

MyJavaBean bean = new MyJavaBean();
bean.setString( "JSON" );
bean.setInteger( 1 );
bean.setDooble( 2.0d );
bean.setBool( true );
JSONObject jsonObject = (JSONObject) JSONSerializer.toJSON( bean );
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setRootClass( MyJavaBean.class );
jsonConfig.setJavaPropertyFilter( new PropertyFilter(){ 
   public boolean apply( Object source, String name, Object value ) { 
      if( "bool".equals( name ) || "dooble".equals( name ) ){ 
         return true; 
      } 
      return false; 
   } 
});
MyJavaBean bean2 = (MyJavaBean) JSONSerializer.toJava( jsonObject, jsonConfig );
assertNotNull( bean2 );
assertEquals( "JSON", bean2.getString() );
assertEquals( 1, bean2.getInteger() );
assertEquals( 0d, bean2.getDooble(), 0d );
assertFalse( bean2.getBool() );
[Index |From JSON to Java ]
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); 
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();
String xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<o>
   <boolean type="boolean">true</boolean>
   <double type="number">2.0</double>
   <integer type="number">1</integer>
   <name type="string">JSON</name>
   <nested class="object">
      <id type="number">42</id>
   </nested>
   <array class="array">
      <e type="number">1</e>
      <e type="number">2</e>
      <e type="number">3</e>
   </array>
</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); 
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.setTypeHintsEnabled( false );
String xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<o>
   <boolean>true</boolean>
   <double>2.0</double>
   <integer>1</integer>
   <name>JSON</name>
   <nested>
      <id>42</id>
   </nested>
   <array>
      <e>1</e>
      <e>2</e>
      <e>3</e>
   </nested>
</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); 
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);

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> 
<?xml version="1.0" encoding="UTF-8"?>
<o>
   <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>
   <array json_class="array">
      <e json_type="number">1</e>
      <e json_type="number">2</e>
      <e json_type="number">3</e>
   </array>
</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); 
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.setRootName( "root" );
xmlSerializer.setElementName( "element" );
String xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<root>
   <boolean type="boolean">true</boolean>
   <double type="number">2.0</double>
   <integer type="number">1</integer>
   <name type="string">JSON</name>
   <nested class="object">
      <id type="number">42</id>
   </nested>
   <array class="array">
      <element type="number">1</e>
      <element type="number">2</e>
      <element type="number">3</e>
   </array>
</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); 
String str = "['JSON', 1, 2.0, true, {'id':42}, [1,2,3]]";
JSON json = JSONSerializer.toJSON( str );
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<a>
   <e type="string">JSON</e>
   <e type="number">1</e>
   <e type="number">2.0</e>
   <e type="boolean">true</e>
   <e class="object">
      <id type="number">42</id>
   </e>
   <e class="array">
      <e type="number">1</e>
      <e type="number">2</e>
      <e type="number">3</e>
   </e>
</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); 
String str = "['JSON', 1, 2.0, true, {'id':42}, [1,2,3]]";
JSON json = JSONSerializer.toJSON( str );
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setTypeHintsEnabled( false );
String xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<a>
   <e>JSON</e>
   <e>1</e>
   <e>2.0</e>
   <e>true</e>
   <e>
      <id>42</id>
   </e>
   <e>
      <e>1</e>
      <e>2</e>
      <e>3</e>
   </e>
</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); 
String str = "['JSON', 1, 2.0, true, {'id':42}, [1,2,3]]";
JSON json = JSONSerializer.toJSON( str );
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setTypeHintsCompatibility( false );
String xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<a>
   <e json_type="string">JSON</e>
   <e json_type="number">1</e>
   <e json_type="number">2.0</e>
   <e json_type="boolean">true</e>
   <e json_class="object">
      <id json_type="number">42</id>
   </e>
   <e json_class="array">
      <e json_type="number">1</e>
      <e json_type="number">2</e>
      <e json_type="number">3</e>
   </e>
</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 ); 
String str = "{'number': [1,2,3]}";
JSONObject json = (JSONObject) JSONSerializer.toJSON( str );
XMLSerializer xmlSerializer = new XMLSerializer();
xmlSerializer.setTypeHintsEnabled( false );
String xml = xmlSerializer.write( json );
System.out.println( xml );
json.getJSONArray( "number" ).setExpandElements( true );
xml = xmlSerializer.write( json );
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> 
<?xml version="1.0" encoding="UTF-8"?>
<o>
   <number>
      <e>1</e>
      <e>2</e>
      <e>3</e>
   </number>
</o>

<?xml version="1.0" encoding="UTF-8"?>
<o>
   <number>1</number>
   <number>2</number>
   <number>3</number>
</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> 
<o number="1">
   first
   <string>json</string>
   <array>
      <e>1</e>
      <e>true</e>
   </array>
</o>

1.String xml = ... 
2.XMLSerializer xmlSerializer = new XMLSerializer(); 
3.JSON json = xmlSerializer.read( xml ); 
4.System.out.println( json.toString(2) ); 
String xml = ...
XMLSerializer xmlSerializer = new XMLSerializer();
JSON json = xmlSerializer.read( xml );
System.out.println( json.toString(2) );

1.{ 
2.  "string": "json", 
3.  "#text": "first", 
4.  "array":   [ 
5.    "1", 
6.    "true" 
7.  ], 
8.  "@number": "1" 
9.} 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值