Java XML Element Get Value getTextValue(Element ele, String tagName)

Here you can find the source of getTextValue(Element ele, String tagName)

Description

Helper function for quickly retrieving a String value of a given XML element.

License

Open Source License

Parameter

Parameter Description
ele The document element from which to pull the String value.
tagName The name of the node.

Return

The String value of the given node in the element passed in.

Declaration

public static String getTextValue(Element ele, String tagName) 

Method Source Code

//package com.java2s;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
    private static final Pattern encgt = Pattern.compile(">");
    private static final Pattern enclt = Pattern.compile("<");
    private static final Pattern encQuot = Pattern.compile(""");
    private static final Pattern encAmp = Pattern.compile("&");

    /**/*from  w ww. ja v a 2s  . c o  m*/
     * Helper function for quickly retrieving a String value of a given
     * XML element.
     * @param ele The document element from which to pull the String value.
     * @param tagName The name of the node.
     * @return The String value of the given node in the element passed in.
     */
    public static String getTextValue(Element ele, String tagName) {
        String textVal = null;
        NodeList nl = ele.getElementsByTagName(tagName);
        if (nl != null && nl.getLength() > 0) {
            Element el = (Element) nl.item(0);
            if (el.getFirstChild() != null) {
                textVal = el.getFirstChild().getNodeValue();
            } else {
                textVal = "";
            }
        }
        return decode(textVal);
    }

    /**
     * Helper function for decode XML entities.
     *
     * @param str The XML-encoded String to decode.
     * @return An XML-decoded String.
     */
    public static String decode(String str) {

        if (str == null) {
            return null;
        }

        Matcher gtmatcher = encgt.matcher(str);
        if (gtmatcher.matches()) {
            str = gtmatcher.replaceAll(">");
        }
        Matcher ltmatcher = enclt.matcher(str);
        if (ltmatcher.matches()) {
            str = ltmatcher.replaceAll("<");
        }
        Matcher quotMatcher = encQuot.matcher(str);
        if (quotMatcher.matches()) {
            str = quotMatcher.replaceAll("\"");
        }
        Matcher ampMatcher = encAmp.matcher(str);
        if (ampMatcher.matches()) {
            str = ampMatcher.replaceAll("&");
        }

        return str;
    }
}

Related

  1. getTextValue(Element el, String tagName)
  2. getTextValue(Element ele, String tagName)
  3. getTextValue(Element ele, String tagName)
  4. getTextValue(Element ele, String tagName)
  5. getTextValue(Element ele, String tagName)
  6. getTextValue(Element ele, String tagName)
  7. getTextValue(Element ele, String tagName)
  8. getTextValue(Element element)
  9. getTextValue(Element element)