Xml to Json conversion:
Lets see with the help of example.
Following jars are required for conversion:
	- apache-commmons
- json-lib
- ezmorph
Suppose we have the xml file with name demo.xml with the following data:
<!--?xml version="1.0" encoding="UTF-8"?-->
<group>
   <person id="01">
      <Name>Shawn Michael</Name>
      <Age>36</Age>
      <Gender>Male</Gender>
      <Nationality>Indonesian</Nationality>
   </person>
   <person id="02">
      <Name>Dev Gaba</Name>
      <Age>24</Age>
      <Gender>Male</Gender>
      <Nationality>Indian</Nationality>
   </person>
   <person id="03">
      <Name>Shikha Gulati</Name>
      <Age>22</Age>
      <Gender>Female</Gender>
      <Nationality>Indian</Nationality>
   </person>
</group>
This file should be placed in the same path as classpath.
Java code for conversion is:
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import org.apache.commons.io.IOUtils;
import net.sf.json.JSON;
import net.sf.json.xml.XMLSerializer;
public class ConvertToJson {
      private static URL url = null;
        private static InputStream input = null;   
        public static void main(String args[]) throws IOException {
            try{
                url = ConvertToJson.class.getClassLoader().getResource("example.xml");
                input = url.openStream();
                String xmlData = IOUtils.toString(input);
                XMLSerializer xmlSerializer = new XMLSerializer();  
                JSON json = xmlSerializer.read(xmlData);
                System.out.println("JSON format : " + json);
            }catch(Exception e){
                e.printStackTrace();
            }finally{
                    input.close();
                   }
            }
        }
Output:
JSON format : [{"@id":"01","Name":"Shawn Michael","Age":"36","Gender":"Male","Nationality":"Indonesian"},{"@id":"02","Name":"Dev Gaba","Age":"24","Gender":"Male","Nationality":"Indian"},{"@id":"03","Name":"Shikha Gulati","Age":"22","Gender":"Female","Nationality":"Indian"}]
 
                       
                    
1 Comment(s)