不废话,直接上代码!
public class Convert { public static void main(String[] args) { String json = xml2Json(); // xml to json String xml = json2Xml(); // json to xml } /** * json字符串转换成xml格式字符串 * @return */ public static String json2Xml(){ String json = "{\"business\":{\"body\":{\"fpdm\":\"发票代码\",\"fplxdm\":\"发票类型代码\",\"kpzdbs\":\"开票终端标识\",\"dyfs\":\"打印方式\",\"dylx\":\"打印类型\",\"printername\":\"打印机名称\",\"fphm\":\"发票号码\"}}}"; JSONObject jsonObject = new JSONObject(json); String xml = XML.toString(jsonObject); return xml; } /** * xml字符串转换为json字符串 * @return */ public static String xml2Json(){ String xml = "<?xml version=\"1.0\" encoding=\"gbk\"?>" + "<business>" + "<body >" + "<kpzdbs>开票终端标识</kpzdbs>" + "<fplxdm>发票类型代码</fplxdm>" + "<fpdm>发票代码</fpdm>" + "<fphm>发票号码</fphm>" + "<dylx>打印类型</dylx>" + "<dyfs>打印方式</dyfs>" + "<printername>打印机名称</printername>" + "</body>" + "</business>"; JSONObject json = XML.toJSONObject(xml); return json.toString(); } }
xml2Json(); 运行结果为:
json2Xml(); 运行结果为:
代码所需要的jar:[点击下载]
代码所需要的json:“{
"kpzdbs": "开票终端标识",
"fplxdm": "发票类型代码",
"fpdm": "发票代码",
"fphm": "发票号码",
"dylx": "打印类型",
"dyfs": "打印方式",
"printername": "打印机名称"
}”;
代码所需要的xml:
“<?xml version="1.0" encoding="gbk"?>
<business>
<body >
<kpzdbs>开票终端标识</kpzdbs>
<fplxdm>发票类型代码</fplxdm>
<fpdm>发票代码</fpdm>
<fphm>发票号码</fphm>
<dylx>打印类型</dylx>
<dyfs>打印方式</dyfs>
<printername>打印机名称</printername>
</body>
</business>”;
以上就是对简单的xml进行转换,由于水平有限,对于复杂的xml来说目前还没有实现,如果有希望大家相互交流。
如何将json字符串转换为带有属性的xml???(<business id="20004"comment="发票打印">)
以下是复杂的XML:
<business id="20004" comment="发票打印">
<body yylxdm="1">
<kpzdbs>开票终端标识</kpzdbs>
<fplxdm>发票类型代码</fplxdm>
<fpdm>发票代码</fpdm>
<fphm>发票号码</fphm>
<dylx>打印类型</dylx>
<dyfs>打印方式</dyfs>
<printername>打印机名称</printername>
</body>
</business>