[an error occurred while processing this directive]

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

                         

[an error occurred while processing this directive]