packagecom.saoptest.test03;importjava.io.ByteArrayInputStream;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.Iterator;importjava.util.List;importjava.util.Map;importorg.dom4j.Document;importorg.dom4j.DocumentException;importorg.dom4j.Element;importorg.dom4j.io.SAXReader;public classXmlToMapUtil01 {/*** 将Document对象转为Map(String→Document→Map)
*@paramDocument
*@return
*/@SuppressWarnings("rawtypes")public static MapDom2Map(Document doc){
Map map = new HashMap();if(doc == null)returnmap;
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));
}elsemap.put(e.getName(), e.getText());
}returnmap;
}/*** 将Element对象转为Map(String→Document→Element→Map)
*@paramElement
*@return
*/@SuppressWarnings({"unchecked", "rawtypes"})public staticMap Dom2Map(Element e){
Map map= newHashMap();
List list=e.elements();if(list.size() > 0){for (int i = 0;i < list.size(); i++) {
Element iter=(Element) list.get(i);
List mapList= newArrayList();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= newArrayList();
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);
}elsemap.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= newArrayList();
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);
}elsemap.put(iter.getName(), iter.getTex