Java XML Element Text Set setElementText(Node elem, Object text)

Here you can find the source of setElementText(Node elem, Object text)

Description

Sets the text value of an Element.

License

Apache License

Parameter

Parameter Description
elem the Element for which the text value should be set
text the new text value of the element

Return

true if the text could be set or false otherwise

Declaration

static public boolean setElementText(Node elem, Object text) 

Method Source Code

//package com.java2s;
/*/*from  w  w  w.  ja  v  a  2 s. com*/
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you 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.Element;

import org.w3c.dom.Node;

public class Main {
    /**
     * Sets the text value of an Element. if current text of the element is
     * replaced with the new text if text is null any
     * current text value is deleted.
     * 
     * @param elem the Element for which the text value should be set
     * @param text the new text value of the element
     * @return true if the text could be set or false otherwise
     */
    static public boolean setElementText(Node elem, Object text) {
        if (elem == null)
            return false; // Fehler
        // Find Text
        Node node = elem.getFirstChild();
        while (node != null) { // Find all Text nodes
            if (node.getNodeType() == Node.TEXT_NODE)
                break; // gefunden
            node = node.getNextSibling();
        }
        if (node != null) { // Set or remove text
            if (text != null)
                node.setNodeValue(text.toString());
            else
                elem.removeChild(node);
        } else if (text != null) { // Add Text
            elem.appendChild(elem.getOwnerDocument().createTextNode(text.toString()));
        }
        return true;
    }

    /**
     * Gets the first (direct) child Element.
     * 
     * @param parent the parent element below which to search the child
     * @return the first child element, or null otherwise
     */
    static public Element getFirstChild(Node parent) { // Child Element suchen
        if (parent == null)
            return null;
        Node node = parent.getFirstChild();
        while (node != null) { // Find all Element nodes
            if (node.getNodeType() == Node.ELEMENT_NODE)
                return (Element) node; // found
            node = node.getNextSibling();
        }
        return null; // not found!
    }
}

Related

  1. setElementText(Element element, String text)
  2. setElementText(Element element, String value)
  3. setElementText(Element elm, String text)
  4. setElementText(Element elm, String text)
  5. setElementText(Element elm, String text)
  6. setElementTextByAttr(Element modsroot, String nodename, String attrname, String attrvalue, String newValue)
  7. setElementTextValue(Element e, String text)
  8. setElementValue(Element element, String val)
  9. setElementValue(Element element, String value)