Java XML Child Element Text getChildElementText(Element parentElement, String tagName)

Here you can find the source of getChildElementText(Element parentElement, String tagName)

Description

This method returns the child element text.

License

Open Source License

Parameter

Parameter Description
parentElement The parent element.
tagName The child element name.

Return

The text contained in the child element.

Declaration

public static String getChildElementText(Element parentElement, String tagName) 

Method Source Code

//package com.java2s;
/**/*from www  .j  a v  a2 s.com*/
 * Copyright 2003, 2004  ONCE Corporation
 *
 * LICENSE:
 * This file is part of BuilditMPI. It may be redistributed and/or modified
 * under the terms of the Common Public License, version 1.0.
 * You should have received a copy of the Common Public License along with this
 * software. See LICENSE.txt for details. Otherwise, you may find it online at:
 *   http://www.oncecorp.com/CPL10/ or http://opensource.org/licenses/cpl.php
 *
 * DISCLAIMER OF WARRANTIES AND LIABILITY:
 * THE SOFTWARE IS PROVIDED "AS IS".  THE AUTHOR MAKES NO REPRESENTATIONS OR
 * WARRANTIES, EITHER EXPRESS OR IMPLIED.  TO THE EXTENT NOT PROHIBITED BY LAW,
 * IN NO EVENT WILL THE AUTHOR BE LIABLE FOR ANY DAMAGES, INCLUDING WITHOUT
 * LIMITATION, LOST REVENUE, PROFITS OR DATA, OR FOR SPECIAL, INDIRECT,
 * CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS
 * OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO ANY FURNISHING,
 * PRACTICING, MODIFYING OR ANY USE OF THE SOFTWARE, EVEN IF THE AUTHOR HAVE
 * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
 *
 * -----------------------------------------------------
 * $Id$
 */

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

public class Main {
    /**
     * This method returns the child element text.
     * @param parentElement The parent element.
     * @param tagName The child element name.
     * @return The text contained in the child element.
     */
    public static String getChildElementText(Element parentElement, String tagName) {
        Element element = getChildElement(parentElement, tagName);
        if (element != null) {
            return getText(element);
        } else {
            return null;
        }
    }

    /**
     * This method returns the child element with the particular name.
     * @param parentElement The parent element.
     * @param tagName The child element name.
     * @return The child element.
     */
    public static Element getChildElement(Element parentElement, String tagName) {
        NodeList nodes = parentElement.getElementsByTagName(tagName);
        if (nodes != null && nodes.getLength() != 0) {
            return (Element) nodes.item(0);
        } else {
            return null;
        }
    }

    /**
     * Looks for a text child node and returns its value.
     *
     * @param tag - XML element
     * @return - the text String of the tag
     */
    public static String getText(final Element tag) {
        if (tag == null)
            return null;

        NodeList lst = tag.getChildNodes();
        StringBuffer buf = new StringBuffer();

        for (int Index = 0, Cnt = lst.getLength(); Index < Cnt; Index++) {
            if (lst.item(Index).getNodeType() == Node.ENTITY_REFERENCE_NODE) {
                buf.append(lst.item(Index).getChildNodes().item(0).getNodeValue());
            }
            if ((lst.item(Index).getNodeType() == Node.TEXT_NODE)
                    || (lst.item(Index).getNodeType() == Node.CDATA_SECTION_NODE)) {
                buf.append(lst.item(Index).getNodeValue());
            }
        }

        if (buf.length() == 0)
            return null;
        else
            return buf.toString();
    }
}

Related

  1. getChildElementsTextSet(Element parentElement, String tagName)
  2. getChildElementText(Element element, String name)
  3. GetChildElementText(Element element, String name, String defaultValue)
  4. getChildElementText(Element elm, String name, String defaultValue)
  5. getChildElementText(Element elm, String name, String defaultValue)
  6. getChildElementText(final Element elParent, final String childTag)
  7. getChildElementText(final Element parent, final String childName, final String defaultText)
  8. getChildElementText(Node node, String childName)
  9. getChildElementTextArr(Element parent, String name)