@GetMapping("/getHostMenuButtons")
@Operation(summary = "创建试卷分类")
@PermitAll
// @PreAuthorize("@ss.hasPermission('jd:index:query')")
public JSONObject getJd() {
//1、读取文件并转换为Document文档对象
Document doc = null;
try {
doc = new SAXReader().read(new File("F:\\zty\\test1\\ruoyi-vue-pro-master\\yudao-ui-admin-vue2\\src\\views\\jd\\w2101.xml"));
} catch (DocumentException e) {
throw new RuntimeException(e);
}
//2、使用asXML()方法将DOM文档对象转换为字符串
String s = doc.asXML();
//3、调用自定义的方法转换为JSON数据格式
JSONObject jsonObject = startXMLToJSON(s);
// jsonObject.toJSONArray(Collections.singleton("shape"));
//4、输出结果
// System.out.println(jsonObject.size());
return jsonObject;
}
/**
* 自定义
*/
public static JSONObject startXMLToJSON(String xml) {
//1、定义JSON对象保存结果
JSONObject result = new JSONObject();
try {
//2、使用DocumentHelper.parseText()转换为DOM文档对象
Document document = DocumentHelper.parseText(xml);
//3、获取DOM文档根节点
List<Node> elementList = document.getRootElement().content();
//4、调用自定义的方法转换为JSON数据格式
String shape = elementList.get(0).getDocument().asXML().replace("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "")
.replace("<JDOPC>", "")
.replace("</JDOPC>", "");
result = new JSONObject(shape);
} catch (DocumentException e) {
e.printStackTrace();
}
return result;
}
c语言xml数据文件结构
请求接口响应前端对象集合