Replacing a Text Node with a New CDATA Section Node

in this Example describes a methods to replace a Text node with new CDATASection Node in a DOM document.

Replacing a Text Node with a New CDATA Section Node

Replacing a Text Node with a New CDATA Section Node

     

This Example describes a method to replace a Text node with new CDATASection Node in a DOM document. Methods which are used for replacement of the text node in the DOM Document are described below :-

Element root = doc.getDocumentElement():-allows direct access to the root of the DOM document.

Element place = (Element) root.getFirstChild():-access the first child of the root.

Element directions = (Element) place.getLastChild():-access the last child of the node place and stores in the new node direction.

CDATASection dirdata = doc.createCDATASection(dirtext):- creates a cdata node with text in it.

directions.replaceChild(dirdata,directions.getFirstChild()):-replaces a child node direction with CDATASection node.

Xml code for the program generated is:-

<?xml version="1.0" encoding="UTF-8"?>
<Company>
    <Location>
        <Employeename>Girish</Employeename>
        <Companyname>Roseindia.net Rohini</Companyname>
    </Location>
</Company>


CDATASectionNode.java
 

/* 
 * @Program that Edit Text by Insertion and Replacement
 
* CDATASectionNode.java 
 * Author:-RoseIndia Team
 * Date:-10-Jun-2008
 */

import java.io.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;

public class CDATASectionNode {

  public static void main(String[] argsthrows Exception {
  DocumentBuilderFactory builderFactory = 
   DocumentBuilderFactory.newInstance
();
  builderFactory.setValidating(false);

  Document doc = builderFactory.newDocumentBuilder().
   parse
(new File("Document8.xml"));
  new CDATASectionNode().addCDATA(doc);
  }

  public void addCDATA(Document doc) {
  Element root = doc.getDocumentElement();
  Element Location = (Elementroot.getFirstChild();
  Element Companyname = (ElementLocation.getLastChild();
  System.out.println("Text node before Replacing is: "+
  Companyname.getFirstChild
().getNodeValue());
  String dirtext ="\n"+
  "Rose\n" +
  "India\n" +
  ".Net\n" +
  "Rohini\n"+
  "<>";
  CDATASection dirdata = doc.createCDATASection(dirtext);
  Companyname.replaceChild(dirdata,
  Companyname.getFirstChild
());
  System.out.println("Text node after Replacing is: "+
   Companyname.getFirstChild
().getNodeValue());
  
  }
}


Output of the program

Text node before Replacing is: Roseindia.net Rohini
Text node after Replacing is: 
Rose
India
.Net
Rohini
<>

DownLoad Source Code