Java XML First Child Element getFirstNonTextChild(Node root)

Here you can find the source of getFirstNonTextChild(Node root)

Description

Returns the first non-text child node of the given node.

License

Apache License

Parameter

Parameter Description
root The Node , which should be searched.

Return

if a child node was found, null if it was not.

Declaration

public static Node getFirstNonTextChild(Node root) 

Method Source Code

//package com.java2s;
/**//from   w ww  .j a  v a 2s  .  c  o  m
 * Copyright 2015 Nortal Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy of the License at
 * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
 * either express or implied. See the License for the specific language governing permissions and limitations under the
 * License.
 **/

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

public class Main {
    /**
     * Returns the first non-text child node of the given node.
     *
     * @param root The {@link Node}, which should be searched.
     * @return {@link Node} if a child node was found, <code>null</code> if it was not.
     */
    public static Node getFirstNonTextChild(Node root) {
        Node resultNode = null;
        NodeList nl = root.getChildNodes();
        for (int i = 0; i < nl.getLength(); i++) {
            if (!isTextNode(nl.item(i))) {
                resultNode = nl.item(i);
                break;
            }
        }
        return resultNode;
    }

    /**
     * Returns whether given {@link Node} is text {@link Node}.
     *
     * @param node the {@link Node}
     * @return whether given node was text node
     */
    public static boolean isTextNode(Node node) {
        return node != null ? Node.TEXT_NODE == node.getNodeType() : false;
    }
}

Related

  1. getFirstNamedChild(Node n, String name)
  2. getFirstNamedChild(Node node, String name)
  3. getFirstNamedChildNode(Element element, String string)
  4. getFirstNamedChildNode(Node root, String nodeName)
  5. getFirstNontextChild(Node d)
  6. getFirstTextChild(Node n)
  7. getFirstTextChild(Node node)
  8. getFirstVisibleChildElement(Node parent)
  9. getValueOfFirstElementChild(final Element element, final String namespace, final String localname)