dom4j递归解析XML字符串所有子节点
Posted 德邦总管
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dom4j递归解析XML字符串所有子节点相关的知识,希望对你有一定的参考价值。
1 /** 2 * dom4j递归解析所有子节点 3 * 4 * @param childElements 5 * @param mapEle 6 * @return 7 */ 8 public Map<String, Object> getElementsToString(String print) { 9 //解析返回的xml字符串,生成document对象 10 Document document = null; 11 Map<String,Object> mapEle = null; 12 try{ 13 document = DocumentHelper.parseText(print); 14 //根节点 15 Element root = document.getRootElement(); 16 //子节点 17 List<Element> childElements = root.elements(); 18 19 mapEle = new HashMap<String, Object>(); 20 //遍历子节点 21 mapEle = getAllElements(childElements,mapEle); 22 }catch(DocumentException e){ 23 // TODO Auto-generated catch block 24 e.printStackTrace(); 25 } 26 return mapEle; 27 } 28 29 /** 30 * dom4j递归解析所有子节点 31 * 32 * @param childElements 33 * @param mapEle 34 * @return 35 */ 36 public static Map<String, Object> getAllElements(List<Element> childElements,Map<String,Object> mapEle) { 37 for (Element ele:childElements){ 38 mapEle.put(ele.getName(), ele.getText()); 39 if(ele.elements().size()>0){ 40 mapEle = getAllElements(ele.elements(), mapEle); 41 } 42 } 43 return mapEle; 44 }
以上是关于dom4j递归解析XML字符串所有子节点的主要内容,如果未能解决你的问题,请参考以下文章