Java 怎么判断是否含有指定名称的命名空间的任何XML元素

2019年7月25日22:46:05Java 怎么判断是否含有指定名称的命名空间的任何XML元素已关闭评论 509 1051字阅读3分30秒

1.简介

Java 怎么判断是否含有指定名称的命名空间的任何XML元素?——请看下文。

2.示例代码

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

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

public class Main{
    public static boolean anyElementsWithNameNS(Element element,
            String uri, String name) {
        for (Element el = getFirstChildElementNS(element, uri); el != null; el = XDOMUtil
                .getNextSiblingElementNS(el, uri)) {
            if (el.getLocalName().equals(name)
                    && el.getNamespaceURI().equals(uri)) {
                return true;
            }
        }
        return false;
    }
    public static Element getFirstChildElementNS(Node parent, String uri) {

        
        Node child = parent.getFirstChild();
        while (child != null) {
            if (child.getNodeType() == Node.ELEMENT_NODE) {
                String childURI = child.getNamespaceURI();
                if (childURI != null && childURI.equals(uri)) {
                    return (Element) child;
                }
            }
            child = child.getNextSibling();
        }

        
        return null;

    }
    public static Element getNextSiblingElementNS(Node node, String uri) {
        
        Node sibling = node.getNextSibling();
        while (sibling != null) {
            if (sibling.getNodeType() == Node.ELEMENT_NODE) {
                String siblingURI = sibling.getNamespaceURI();
                if (siblingURI != null && siblingURI.equals(uri)) {
                    return (Element) sibling;
                }
            }
            sibling = sibling.getNextSibling();
        }

        
        return null;

    }
}

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