Hi friends,
I would like to share converting JOSN to XML format.
XML:
- XML (Extensible Markup Language) is a mark-up language that defines the set of rules for encoding document in Human &Machine readable format.
- XML mainly emphasizes on Simplicity, Generality and Usability over the Internet.
- XML is a textual data format with strong support for all the languages of the World.
JSON:
- JSON (JavaScript Object Notation) is a text-based open standard designed for Human-Readable data interchange.
- Even JSON is javaScript specific, it is language-independent with parsers available for many languages.
- JSON format is often used over network connection for serializing and transmitting structured data .
On keeping Pros and Cons of them a-part, this is the scenario which is very often needed for developing Applications (Mainly in Web environment).
Pre-Requisites:
I used net.sf.json-lib for JSON support. You can download from here.
Json-lib should contain the below dependencies in classpath:
- commons-lang
- commons-beanutils
- commons-collections
- commons-logging
- ezmorph
Below is code for Converting JSON to XML format:
package testapp; import java.io.InputStream; import java.net.URL; import net.sf.json.JSON; import net.sf.json.xml.XMLSerializer; import org.apache.commons.io.IOUtils; /** * @author naveen.k */ public class JsonToXMLConverter { private URL url = null; private InputStream inputStream = null; public void getJsonfromXml() { try{ url = JsonToXMLConverter.class.getClassLoader().getResource("sample.txt"); inputStream = url.openStream(); String jsonData = IOUtils.toString(inputStream); XMLSerializer serializer = new XMLSerializer(); JSON json = JSONSerializer.toJSON(jsonData); String xml = serializer.write(json); System.out.println(xml); }catch(Exception e){ e.printStackTrace(); }finally{ try { if (inputStream != null) { inputStream.close(); } url = null; } catch (IOException ex) {} } } public static void main(String[] args) { new JsonToXMLConverter().getJsonfromXml(); } }
Place the sample JSON in the specified path
sample.txt
==========
[ { "@id":"bk01", "author":"Gambardella, Matthew", "title":"XML Developer's Guide", "genre":"Computer", "price":"44.95", "publish_date":"2000-10-01", "description":"An in-depth look at creating applications \n with XML." }, { "@id":"bk02", "author":"Ralls, Kim", "title":"Midnight Rain", "genre":"Fantasy", "price":"5.95", "publish_date":"2000-12-16", "description":"A former architect battles corporate zombies, \n an evil sorceress, and her own childhood to become queen \n of the world." } ]
Output XML:
===========
Gambardella, Matthew An in-depth look at creating applications with XML. Computer 44.95 2000-10-01 XML Developer's Guide Ralls, Kim A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world. Fantasy 5.95 2000-12-16 Midnight Rain
For XML to JSON conversion please refer this