Java 怎么获取XML节点属性深度

2019年7月21日19:38:32Java 怎么获取XML节点属性深度已关闭评论 450 809字阅读2分41秒

1.简介

Java 怎么获取XML节点属性深度?——请看下文。

2.示例代码

/**
 * 版权所有 编程十万个怎么办(www.tah1986.com)
 */


import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class Main {
    public static String getNodeAttributeDeep(NodeList nodelList,
            String nodeName, String nodeAttr) {
        for (int i = 0; i < nodelList.getLength(); i++) {
            Node node = nodelList.item(i);
            if (node.getNodeName().equals(nodeName)) {
                return getNodeAttribute(node, nodeAttr);
            }
            if (node.getChildNodes().getLength() > 0) {
                String result = getNodeAttributeDeep(node.getChildNodes(),
                        nodeName, nodeAttr);
                if (result != null)
                    return result;
            }
        }
        return null;
    }

    public static String getNodeAttribute(Node node, String s) {
        NamedNodeMap attributes = node.getAttributes();
        for (int k = 0; k < attributes.getLength(); k++) {
            Node nodeAttr = attributes.item(k);
            if (nodeAttr.getNodeName().equals(s)) {
                return nodeAttr.getNodeValue();
            }
        }
        return null;
    }
}

 
继续阅读
编程十万个怎么办