Axiom解析XML,axiomxml,1、遍历XML全部节点,
分享于 点击 35914 次 点评:93
Axiom解析XML,axiomxml,1、遍历XML全部节点,
1、遍历XML全部节点,将节点放入Map返回2、遍历XML当前父节点下的所有子节点
[Java]代码
import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import org.apache.axiom.om.OMElement;import org.apache.axiom.om.OMNode;public class AxiomParseXML { /** * 遍历全部节点,将节点放入Map返回 * @param element * @return */ public static Map getResults(OMElement element) { if (element == null) { return null; } Iterator iter = element.getChildElements(); Map map = new HashMap(); while (iter.hasNext()) { OMNode omNode = (OMNode) iter.next(); if (omNode.getType() == OMNode.ELEMENT_NODE) { OMElement omElement = (OMElement) omNode; String key = omElement.getLocalName().trim(); //System.out.println("sta: " + key); String value = omElement.getText().trim(); map.put(key, value); } } return map; } /** * 遍历当前父节点下的所有子节点 * @param element OMElement 对象 * @param parentNode 父节点 * @return List */ public static List getNodeList(OMElement element, String parentNode) throws java.io.IOException{ if (element == null || parentNode == null) { return null; } List list = new ArrayList(); Iterator<OMElement> iter = element.getChildElements(); while(iter.hasNext()){ OMElement node = iter.next(); if(node.getLocalName().equals(parentNode)){ Map map = new HashMap(); Iterator<OMElement> iter1 = node.getChildElements(); while(iter1.hasNext()){ OMElement node1 = iter1.next(); map.put(node1.getLocalName(), node1.getText()); //System.out.println(node1.getLocalName()+":"+node1.getText()); } list.add(map);//System.out.println(list); } } return list; }}
用户点评