/**

* 可解析list

*

* @param fileName

* @return

* @throws Exception

*/

@SuppressWarnings("unchecked")

public Map<String, Object> parserXmlToJSONObjectByArray(String fileName) throws Exception {

// File inputXml = new File(fileName);

InputStream iStream = new ByteArrayInputStream(fileName.getBytes());

SAXReader saxReader = new SAXReader();

Map<String, Object> returnMap = new HashMap<String, Object>();

Reader r = new InputStreamReader(iStream, "UTF-8");

Document document = saxReader.read(r);

Element employees = document.getRootElement();

Map<String, Object> jsontotal = new HashMap<String, Object>();

for (Iterator<?> i = employees.elementIterator(); i.hasNext();) {

Element employee = (Element) i.next();

List<Map<String, Object>> jarry = new ArrayList<Map<String, Object>>();

for (Iterator<?> j = employee.elementIterator(); j.hasNext();) {

Element node = (Element) j.next();

Map<String, Object> jsondetail = new HashMap<String, Object>();

for (Iterator<Element> k = node.elementIterator(); k.hasNext();) {

Element node_child = (Element) k.next();

jsondetail.put(node_child.getName(), node_child.getText());

}

jarry.add(jsondetail);

}

jsontotal.put(employee.getName(), employee.getText());

returnMap.put("jsontotal", jsontotal);

if (jarry != null && jarry.size() > 0) {

returnMap.put("jsonarray", jarry);

}

}

return returnMap;

}

Dom4j把xml转换成Map(非固定格式)

 

将xml转换成Map,能够应对不用结构的xml,而不是只针对固定格式的xml.
转换规则:
1.主要是Map与List的互相嵌套
2.同名称的节点会被装进List

Dom4j把xml转换成Map(固定格式)的更多相关文章

  1. Dom4j把xml转换成Map(非固定格式)

    将xml转换成Map,能够应对不用结构的xml,而不是只针对固定格式的xml.转换规则:1.主要是Map与List的互相嵌套2.同名称的节点会被装进List 示例: import java.util. ...

  2. xml转换成map

    import java.io.IOException;import java.io.StringReader;import java.util.ArrayList;import java.util.H ...

  3. 如何在ASP.NET中用C#将XML转换成JSON

    本文旨在介绍如果通过C#将获取到的XML文档转换成对应的JSON格式字符串,然后将其输出到页面前端,以供JavaScript代码解析使用.或许你可以直接利用JavaScript代码通过Ajax的方式来 ...

  4. Java将其他数据格式转换成json字符串格式

    package com.wangbo.util; import java.beans.IntrospectionException; import java.beans.Introspector; i ...

  5. 如何在ASP.NET中用C#将XML转换成JSON 【转】

      本文旨在介绍如果通过C#将获取到的XML文档转换成对应的JSON格式字符串,然后将其输出到页面前端,以供JavaScript代码解析使用.或许你可以直接利用JavaScript代码通过Ajax的方 ...

  6. Oracle 如何将“26-9月 -17 06.46.00.000000000 下午”字符串转换成标准日期格式

    今天,在读取日期格式数据时,出现这样的格式“26-9月 -17 06.46.00.000000000 下午”,在网上找了一下, 这个也是oracle的一种日期保存格式,数据都是日期类型,只是显示的结果 ...

  7. Properties 转换成Map

    转自:http://feitianbenyue.iteye.com/blog/1759259 对于Properties 转换成Map 的问题: 第一时间想到的肯定有以下: 1.  迭代出来  再 pu ...

  8. 分享非常有用的Java程序 (关键代码)(五)---把 Array 转换成 Map

    原文:分享非常有用的Java程序 (关键代码)(五)---把 Array 转换成 Map import java.util.Map; import org.apache.commons.lang.Ar ...

  9. C#将XML转换成JSON转换XML

    原文:C#将XML转换成JSON转换XML using System; using System.Collections.Generic; using System.Linq; using Syste ...

随机推荐

  1. flume:spooldir采集日志,kafka输出的配置问题

    flume配置: #DBFile DBFile.sources = sources1 DBFile.sinks = sinks1 DBFile.channels = channels1 # DBFil ...

  2. linux top 源码分析

    /* * Copyright (c) 2008, The Android Open Source Project * All rights reserved. * * Redistribution a ...

  3. spring cron表达式

    其他参考资料 http://www.blogjava.net/hao446tian/archive/2012/02/13/369872.html http://blog.sina.com.cn/s/b ...

  4. Mysql 主从热备份

    工作原理 首先锁定并备份主服务器数据库,从服务器导入备份的数据库,实现两个数据库的初态一样.然后把主服务器上执行过的sql语句都记录到二进制日志 Binarylog 中,从服务器会来读取这个log, ...

  5. [WPF系列]-TreeView的常用事项

    引言 项目经常会用Treeview来组织一些具有层级结构的数据,本节就将项目使用Treeview常见的问题作一个总结. DataBinding数据绑定 DataTemplate自定义 <Hier ...

  6. 第一轮复习完毕,kmp走起

    //代码via:http://blog.csdn.net/v_JULY_v/article/details/6111565 //简单思路via:http://study.163.com/course/ ...

  7. ZBrush该如何通过结合KeyShot制作逼真玉佩

    玉在中国的文明史上有着特殊的地位,古人的很多生活器具都是玉雕成的,能常戴在身上的惟有玉佩,古语有云"君子无故,玉不去身".即便到了现代,仍有很多人佩戴玉,倒不一定是因为它有多彰显地 ...

  8. Python黑客编程ARP欺骗

    Python灰帽编程 3.1 ARP欺骗 ARP欺骗是一种在局域网中常用的攻击手段,目的是让局域网中指定的(或全部)的目标机器的数据包都通过攻击者主机进行转发,是实现中间人攻击的常用手段,从而实现数据 ...

  9. web端功能测试总结(一)

    一.功能测试 1.1链接测试 链接是web应用系统的一个很重要的特征,主要是用于页面之间切换跳转,指导用户去一些不知道地址的页面的主要手段,链接测试一般关注三点: 1)链接是否按照既定指示那样,确实链 ...

  10. break prefab instance的原理

    prefab可无限apply: 如果把一个模块做成了prefab,这个prefab可能在同一个scene中添加多个,甚至添加到了多个scene中.设所有这些实例为instance(1),instanc ...