Java XML Node Text Value getText(Node node)

Here you can find the source of getText(Node node)

Description

Extract the textual content from a Node.

License

Apache License

Parameter

Parameter Description
node The node to extract the text from

Return

The textual value of the node

Declaration

public static String getText(Node node) 

Method Source Code


//package com.java2s;
/*// ww w .  j ava2  s  .  co  m
 * Copyright 2005 Joe Walker
 *
 * 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.CharacterData;
import org.w3c.dom.Comment;
import org.w3c.dom.EntityReference;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class Main {
    /**
     * Extract the textual content from a Node.
     * This is rather like the XPath value of a Node.
     * @param node The node to extract the text from
     * @return The textual value of the node
     */
    public static String getText(Node node) {
        StringBuffer reply = new StringBuffer();

        NodeList children = node.getChildNodes();
        for (int i = 0; i < children.getLength(); i++) {
            Node child = children.item(i);

            if ((child instanceof CharacterData && !(child instanceof Comment))
                    || child instanceof EntityReference) {
                reply.append(child.getNodeValue());
            } else if (child.getNodeType() == Node.ELEMENT_NODE) {
                reply.append(getText(child));
            }
        }

        return reply.toString();
    }
}

Related

  1. getText(Node node)
  2. getText(Node node)
  3. getText(Node node)
  4. getText(Node node)
  5. getText(Node node)
  6. getText(Node node)
  7. getTextBefore(Node node)
  8. getTextBetween(Node node1, Node node2)
  9. getTextBuffer(Node e, StringBuilder sb)