结果xml截图

java 原生 json 转 xml  java json转xml 实现代码 读取本地json文件 转成 xml数据 用springboot 发布xml格式数据_json转xml

 

json数据

java 原生 json 转 xml  java json转xml 实现代码 读取本地json文件 转成 xml数据 用springboot 发布xml格式数据_json_02

 

main启动


import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;



public static void main(String[] args) {
// 本地读取方式
new xxx().executeJsonToXml();
}

 

启动内容方法用来调用

public String executeJsonToXml(){
JSONObject jo = JSONOrTextOut.getJSONObject("E:\\public_file\\data.json");
JSONObject jo0 = new JSONObject();
jo0.put("info", jo);
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"+ jsontoxml(jo0, "");
return xml;
}

 

转换代码:可转jsonobject or jsonarray用上边的调用这个

//jo jsonObject
//gt 换行 付

public static String jsontoxml(JSONObject jo, String gt) {
StringBuffer xmlStr = new StringBuffer();
Iterator iter = jo.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next();
String key = entry.getKey().toString();
String val = entry.getValue().toString();
if (val.substring(0, 1).equals("{")) {
xmlStr.append(gt);
xmlStr.append("<");
xmlStr.append(key);
xmlStr.append(">\n");
xmlStr.append(jsontoxml(JSONObject.parseObject(val), gt+"\t"));
xmlStr.append(gt);
xmlStr.append("</");
xmlStr.append(key);
xmlStr.append(">\n");
} else if (val.substring(0, 1).equals("[")) {
xmlStr.append(gt);
xmlStr.append("<");
xmlStr.append(key);
xmlStr.append(">\n");
JSONArray ja = JSONArray.parseArray(val);
for (int i = 0; i < ja.size(); i++) {
JSONObject jo2 = new JSONObject();
jo2.put("object", ja.getJSONObject(i));
xmlStr.append(jsontoxml(jo2, gt+"\t"));
}
xmlStr.append(gt);
xmlStr.append("</");
xmlStr.append(key);
xmlStr.append(">\n");
} else {
xmlStr.append(gt);
xmlStr.append("<");
xmlStr.append(key);
xmlStr.append(">");
xmlStr.append(val);
xmlStr.append("</");
xmlStr.append(key);
xmlStr.append(">\n");
}
}
return xmlStr.toString();
}

 

提供给网络使用的springboot返回代码

 

import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

/**
*
* @author Administrator
*
*/
@RestController
public class zzz{

@Autowired
private zzzservice zszs;

@RequestMapping(value = "/bd", produces = {"application/xhtml+xml;charset=UTF-8" }, method = RequestMethod.GET)
public String bd(HttpServletRequest req) {
return zszs.executeJsonToXml();
}
}

 

ok到这里就ok了

 

在上传个读取json的

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import com.alibaba.fastjson.JSONObject;

public static JSONObject getJSONObject(String url) {
JSONObject jo = new JSONObject();
StringBuilder result = new StringBuilder();
try {
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(url), "UTF-8"));
String s = null;
while ((s = br.readLine()) != null) {// 使用readLine方法,一次读一行
result.append(System.lineSeparator() + s);
}
br.close();
jo = JSONObject.parseObject(result.toString());

} catch (Exception e) {
e.printStackTrace();
}
return jo;
}

 

依赖

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.32</version>
</dependency>

 

 

 

 

 

 

持续更新