Search code examples
javaxmljson

xml to json conversion issue in java, 1st leading zero discarded fom string


My xml contains attribute value "0123" which I want to treat as string, after conversion from xml to json as per following code leading zero gets discarded from attribute value.

Used classes

import org.jdom.Attribute;
import org.jdom.Document;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
import org.json.JSONObject;
import org.json.XML;

//Covert xml to json

    org.jdom.Document jdomDocument = new Document();
    org.jdom.Element Attribute = new org.jdom.Element("Attribute");
    jdomDocument.setRootElement(Attribute);

    org.jdom.Element valueElement = new  org.jdom.Element("Value");
    valueElement.setText(getValue()); // "0123"
   // getValue() return anything like boolean,string,long,date, time etc..

     root.addContent(valueElement);
    String xmlval = new    XMLOutputter(Format.getPrettyFormat()).outputString(jdomDocument);
    JSONObject xmlJSONObj = XML.toJSONObject(xmlval);
    String jsonPrettyPrintString = xmlJSONObj.toString(4);

How to resolve this issue ?


Solution

  • It works :)

    Added value in CDATA section so while conversion from xml to json value display as it is

       org.jdom.Element valueElement = new  org.jdom.Element("Value");
        org.jdom.CDATA cdata = new org.jdom.CDATA(getValue());
        valueElement.setText(cdata );