xml转换json
来源:互联网 发布:淘宝高仿衣服怎么搜 编辑:程序博客网 时间:2024/05/17 22:30
/**
* 转换一个xml格式的字符串到json格式
*
* @param filePath
* 是一个有效的xml文件 地址
* @return 成功反回json 格式的字符串;
* @throws Exception
*/
@SuppressWarnings("unchecked")
public static String xml2JSON(String filePath) throws Exception {
JSONObject obj = new JSONObject();
try {
Element root = XmlUtil.getXMLRoot(filePath);
obj.put(root.getName(), iterateElement(root));
return obj.toString();
} catch (Exception e) {
throw e;
}
}
/**
* 一个迭代方法
*
* @param element
* : org.jdom.Element
* @return java.util.Map 实例
*/
private static Map iterateElement(Element element) {
List jiedian = element.getChildren();
Element et = null;
Map obj = new HashMap();
List list = null;
for (int i = 0; i < jiedian.size(); i++) {
list = new LinkedList();
et = (Element) jiedian.get(i);
if (et.getTextTrim().equals("")) {
if (et.getChildren().size() == 0)
continue;
if (obj.containsKey(et.getName())) {
list = (List) obj.get(et.getName());
}
list.add(iterateElement(et));
obj.put(et.getName(), list);
} else {
if (obj.containsKey(et.getName())) {
list = (List) obj.get(et.getName());
}
list.add(et.getTextTrim());
obj.put(et.getName(), list);
}
}
return obj;
}
* 转换一个xml格式的字符串到json格式
*
* @param filePath
* 是一个有效的xml文件 地址
* @return 成功反回json 格式的字符串;
* @throws Exception
*/
@SuppressWarnings("unchecked")
public static String xml2JSON(String filePath) throws Exception {
JSONObject obj = new JSONObject();
try {
Element root = XmlUtil.getXMLRoot(filePath);
obj.put(root.getName(), iterateElement(root));
return obj.toString();
} catch (Exception e) {
throw e;
}
}
/**
* 一个迭代方法
*
* @param element
* : org.jdom.Element
* @return java.util.Map 实例
*/
private static Map iterateElement(Element element) {
List jiedian = element.getChildren();
Element et = null;
Map obj = new HashMap();
List list = null;
for (int i = 0; i < jiedian.size(); i++) {
list = new LinkedList();
et = (Element) jiedian.get(i);
if (et.getTextTrim().equals("")) {
if (et.getChildren().size() == 0)
continue;
if (obj.containsKey(et.getName())) {
list = (List) obj.get(et.getName());
}
list.add(iterateElement(et));
obj.put(et.getName(), list);
} else {
if (obj.containsKey(et.getName())) {
list = (List) obj.get(et.getName());
}
list.add(et.getTextTrim());
obj.put(et.getName(), list);
}
}
return obj;
}
0 0
- XML与JSON转换
- java 转换xml json
- xStream转换XML、JSON
- XML转换成JSON
- xml转换json
- xStream转换XML、JSON
- xml转换成json
- XML转换成json
- XML转换成JSON
- xml转换成json
- JSON-XML转换工具
- JSON-XML转换工具
- JSON-lib框架,JSON转换、XML转换
- JSON.NET:JSON 转换为 XML ,XML 转换为 JSON
- JSON转换成XML、XML转换成JSON
- xStream完美转换XML、JSON
- xStream完美转换XML、JSON
- xStream完美转换XML、JSON
- PhoneGap 实现带进度条的文件上传(支持任意类型文件)
- Ubuntu下安装Sublime Text 2
- 测试你掌握C的程度
- Apache虚拟主机和虚拟目录+tomcat集成的配置
- java获取当前路径
- xml转换json
- 读取 obj 信息
- 六步成就菜鸟seo走向高端之路
- Android 引导页开发管理2
- android中?和@符号的用法
- 如何在spring框架中解决多数据源的问题
- 请尊重测试:测试从业五年有感
- xml工具类
- android中如果activity中应用fragementlayout布局文件,如何给其中的控件添加事件监听。