小编典典

Java中的xml到json转换问题,第一个前导零丢弃的fom字符串

json

我的xml包含要作为字符串处理的属性值“ 0123”,按照以下代码从xml转换为json后,导致前导零从属性值中丢弃。

二手课

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;

//将xml转换为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);

如何解决这个问题?


阅读 477

收藏
2020-07-27

共1个答案

小编典典

有用 :)

在CDATA部分中添加了值,因此从xml转换为json值时按原样显示

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