Clean text from Node : DOM Element « XML « Java






Clean text from Node

    

/*
 * The Apache Software License, Version 1.1
 *
 * Copyright (c) 2000-2002 The Apache Software Foundation.  All rights
 * reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * 3. The end-user documentation included with the redistribution, if
 *    any, must include the following acknowlegement:
 *       "This product includes software developed by the
 *        Apache Software Foundation (http://www.apache.org/)."
 *    Alternately, this acknowlegement may appear in the software itself,
 *    if and wherever such third-party acknowlegements normally appear.
 *
 * 4. The names "The Jakarta Project", "Ant", and "Apache Software
 *    Foundation" must not be used to endorse or promote products derived
 *    from this software without prior written permission. For written
 *    permission, please contact apache@apache.org.
 *
 * 5. Products derived from this software may not be called "Apache"
 *    nor may "Apache" appear in their names without prior written
 *    permission of the Apache Group.
 *
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 * 
 *
 * This software consists of voluntary contributions made by many
 * individuals on behalf of the Apache Software Foundation.  For more
 * information on the Apache Software Foundation, please see
 * <http://www.apache.org/>.
 */

import java.util.Vector;

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



/**
 * 
 * @author Abey Mullassery
 * 
 */
public class Main {
  public static void cleanText(Node node) {
    try {
      NodeList childNodes = node.getChildNodes();
      int noChildren = childNodes.getLength();
      Node n = null;
      short type = 0;
      Vector rem = new Vector();
      for (int i = 0; i < noChildren; i++) {
        n = childNodes.item(i);
        type = n.getNodeType();
        if (type == Node.TEXT_NODE) {
          rem.add(n);
        } else if (type == Node.ELEMENT_NODE) {
          cleanText(n);
        }
      }
      for (int i = 0; i < rem.size(); i++) {
        node.removeChild((Node) rem.get(i));
      }
    } catch (Exception e) {
      //DebugUtil.debug(e);
    }
  }
}

   
    
    
    
  








Related examples in the same category

1.Add Text object to an Element.
2.Add a new element to the given parent
3.Add an entity to a specified Element.
4.Adds the child element with the given text
5.Compare two DOM Nodes
6.Compare two DOM Nodes from JBoss
7.Create New Element And Set
8.Create New Element And Set Attribute
9.Create a new element
10.Find All Elements By Tag Name
11.Find All Elements By Tag Name Name Space
12.Find Element And Set Or Create And Set
13.Find Element Or Container
14.Find Element Or Create And Attribute
15.Find Element Or Create And Set
16.Find Element Or Create And Set Attribute
17.Get Element Boolean Value
18.Get Element Date Value
19.Get Element Float Value
20.Get Element Int Value
21.Get Element Long Value
22.Get Element QName
23.Get Element String Value
24.Get Element Text
25.Get Elements by parent element
26.Get First Element
27.Get Next Element
28.Get child from an element by name
29.Get content from element
30.Get the content of an optional child element
31.Get the content of the given element.
32.Get the first child element
33.Get the first text node associated with this element
34.Get the next sibling element
35.Get the next sibling with the same name and type
36.Get the raw text content of a node or null if there is no text
37.Get the specified text node associated with this element
38.Get the trimed text content of a node or null if there is no text
39.Get trimmed text content of a node or null if there is no text
40.Gets the child of the specified element having the specified unique name
41.Has Attribute
42.Remove Attribute
43.DOM Util: get Element Text
44.DOM helper for root element
45.Return a list of named Elements with a specific attribute value.
46.Return a list of named Elements.
47.Return child elements with specified name.
48.Return the first element child with the specified qualified name.
49.Return the first named Element found. Null if none.
50.Returns a list of child elements with the given name.
51.Returns an array of text values of a child element.
52.Returns an iterator over the children of the given element with the given tag name.
53.Returns text value of a child element. Returns null if there is no child element found.
54.Returns the first child element with the given name.
55.Returns the first element that has the specified local name.
56.Returns the text of the element
57.Moves the content of the given element to the given element
58.Import Elements
59.Find Container Else Create One
60.Create New Container
61.Macro to get the content of a unique child element.
62.Convert node element To String
63.Convert Element To Stream
64.Get the first element child.
65.Use the Document.getElementsByTagName() method to quickly and easily locate elements by name.
66.Get element by tag from Element
67.Get element by tag from Document
68.Iterable getChildElements(final Element e