public class XmlToMap {
public static Map<String, Object> Dom2Map(Document doc){
Map<String, Object> map = new HashMap<String, Object>();
if(doc == null)
return map;
Element root = doc.getRootElement();
for (Iterator iterator = root.elementIterator(); iterator.hasNext();) {
Element e = (Element) iterator.next();
//System.out.println(e.getName());
List list = e.elements();
if(list.size() > 0){
map.put(e.getName(), Dom2Map(e));
}else
map.put(e.getName(), e.getText());
}
return map;
}
public static Map Dom2Map(Element e){
Map map = new HashMap();
List list = e.elements();
if(list.size() > 0){
for (int i = 0;i < list.size(); i++) {
Element iter = (Element) list.get(i);
List mapList = new ArrayList();
if(iter.elements().size() > 0){
Map m = Dom2Map(iter);
if(map.get(iter.getName()) != null){
Object obj = map.get(iter.getName());
if(!obj.getClass().getName().equals("java.util.ArrayList")){
mapList = new ArrayList();
mapList.add(obj);
mapList.add(m);
}
if(obj.getClass().getName().equals("java.util.ArrayList")){
mapList = (List) obj;
mapList.add(m);
}
map.put(iter.getName(), mapList);
}else
map.put(iter.getName(), m);
}
else{
if(map.get(iter.getName()) != null){
Object obj = map.get(iter.getName());
if(!obj.getClass().getName().equals("java.util.ArrayList")){
mapList = new ArrayList();
mapList.add(obj);
mapList.add(iter.getText());
}
if(obj.getClass().getName().equals("java.util.ArrayList")){
mapList = (List) obj;
mapList.add(iter.getText());
}
map.put(iter.getName(), mapList);
}else
map.put(iter.getName(), iter.getText());
}
}
}else
map.put(e.getName(), e.getText());
return map;
}
}
Java xml文件转换为map集合
时间: 2024-10-21 01:48:09
Java xml文件转换为map集合的相关文章
ubuntu下用java代码调用命令将java格式文件转换为html格式文件
首先我们应该在电脑上装上GNU Source-highlight 3.1.7,给个链接参考: http://www.gnu.org/software/src-highlite/#mozTocId120994 下面代码实现了 将java类型的代码转换为html文件类型的代码,如果java代码的文件名为 helloword.java,则转换为html格式的文件名为helloword.java.html,将java代码在浏览器上显示出来.其次我还将html文件中的内容提取出来,便于在html文件里编写
XML字符串转为Map集合
public class xmlToMapUtils { /** * xml字符串转为map集合 * @param xmlStr * @return */ public static Map<String, Object> xmlToMap(String xmlStr){ List<Map<String, String>> resultList = iterateWholeXML(xmlStr); Map<String, Object> retMap = n
Java核心API -- 8(Map集合)
1. Map集合 Java.util.Map接口 |--HashMap实现类 |--TreeMap实现类 2. HashMap实现类 Map接口定义的集合又称为查找表,用于存储所谓"Key-Value"键值对.Key可以看成是Value的索引.而往往Key是Value的一部分内容. 1)Key不可以重复,但所保存的Value可以重复. 2)根据内部结构的不同,Map接口有多种实现类,其中常用的有内部为hash表实现的HashMap和内部为排序二叉树实现的TreeMap.同样这样的数据结
Java中List Set Map集合的遍历
创建Student实体 package com.smic.test; public class Student { private String name = null; private Integer age = null; public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; }
java XML解析成Map
1.需要解析的文件.xml 1 <?xml version="1.0" encoding="UTF-8"?> 2 <request> 3 <realName>test</realName> 4 <identityNumber>411525152242417185276</identityNumber> 5 <phone>1314456788</phone> 6 <u
php将xml文件转换为html
test.xml: <?xml version="1.0" encoding="ISO-8859-1"?> <catalog> <cd> <title>Empire Burlesque</title> <artist>Bob Dylan</artist> <country>USA</country> <company>Columbia</co
XML转换为Map通用算法实现(Stax实现)
目前项目中需要将XML转换为Map,下面给出了自己的代码实现.请各路大神提供更好的代码实现. 场景: 在项目中需要解析XML文本字符串,需要将XML文本字符串映射为Map格式的对象. 需求: 1.为了提高性能,需要使用Stax进行解析 2.Map结构内部需要支持List.Map.String三种数据格式 示例: 例一: * 字符串:<name>BurceLiu</name><age>18</age> * 转换为的Map结构:{age=18, name=Bur
Java如何读取XML文件 具体实现
转载自:http://www.jb51.net/article/44338.htm import java.io.*;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.Node;import org.w3c.dom.Node
9.XML文件解析
一.xml文件的引入 1.1 创建Student.java类 1 package com.entity; 2 /** 3 * 1.创建学生类 4 * @author pc 5 * 6 */ 7 public class Student { 8 private int id; 9 private String name; 10 private String course; 11 private int score; 12 13 public Student() { 14 } 15 public S