Java 怎么按命名空间获取元素

2019年7月25日22:42:44Java 怎么按命名空间获取元素已关闭评论 413 741字阅读2分28秒

1.简介

Java 怎么按命名空间获取元素?——请看下文。

2.示例代码

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



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

public class Main {
    public static Element getElement(Element e, String nsUri,
            String localName) {
        NodeList l = e.getChildNodes();
        for (int i = 0; i < l.getLength(); i++) {
            Node n = l.item(i);
            if (n.getNodeType() == Node.ELEMENT_NODE) {
                Element r = (Element) n;
                if (equals(r.getLocalName(), localName)
                        && equals(fixNull(r.getNamespaceURI()), nsUri))
                    return r;
            }
        }
        return null;
    }

    public static Element getElement(Element e, String localName) {
        return getElement(e, "", localName);
    }

    
    private static boolean equals(String a, String b) {
        if (a == b)
            return true;
        if (a == null || b == null)
            return false;
        return a.equals(b);
    }

    
    private static String fixNull(String s) {
        if (s == null)
            return "";
        else
            return s;
    }
}

 
编程十万个怎么办