Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Xml Converting CDATA Nodes into Text Nodes

Related Tutorials


 
 

Share on Google+Share on Google+

Converting CDATA Nodes into Text Nodes

Advertisement
This Example describes you the way to Convert CDATA Nodes to Text Nodes in a DOM document.

Converting CDATA Nodes into Text Nodes

     

This Example describes you the way to Convert CDATA Nodes to Text Nodes in a DOM document. JAXP (Java API for XML Processing) is an interface which provides parsing of xml documents. Here the Document BuilderFactory is used to create new DOM parsers.There are some of the methods used in code given below for Converting a CDATA node to Text node:-

DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance():-This method Creates a DocumentBuilder Factory .DocumentBuilder Factory is a Class that enables application to obtain parser for building DOM trees from XML Document

dbf.setCoalescing(true):-This method specifies convert CDATA nodes to Text nodes.

TransformerFactory factory = TransformerFactory.newInstance():-TransformerFactory is a class that is used to create Transformer objects. A TransformerFactory instance can be used to create Transformer and Templates objects.

transformer.transform(source, result):-This function organize data according to a style sheet as we are retrieving it from the File.

Xml code for the program generated is

<?xml version="1.0" encoding="UTF-8"?>
<!-- Information About Employees -->
<Company>
  <Employee Id="Rose-2345">
  <CompanyName>Newstrack</CompanyName>
  <City>Rohini</City>>
  <name>Girish Tewari</name>
  <Phoneno>1234567890</Phoneno>
 <!-- CDATA node -->
 <Doj>Roseindia
  <![CDATA[Roseindia.net <"!@#$%'^&*()> is in Rohini]]>
  Roseindia.net
  </Doj>
  </Employee>
</Company>

ConvertingCDATANodesTextNodes.java:

/* 

 * @Program that convers CDATA Nodes into Text Nodes While Parsing an XML 
   File.


 * ConvertingCDATANodesTextNodes.java 

 * Author:-RoseIndia Team

 * Date:-21-July-2008

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

public class ConvertingCDATANodesTextNodes {
  public static void main(String[] args) throws Exception {
  File f = new File("Cdata.xml");
  DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
  //Configure it to coalesce CDATA nodes
  dbf.setCoalescing(true);
  DocumentBuilder db = dbf.newDocumentBuilder();
  Document doc = db.parse(f);
  new ConvertingCDATANodesTextNodes().CDATAtextnode(doc);
  }
  public void CDATAtextnode(Document doc) throws Exception {
  TransformerFactory factory = TransformerFactory.newInstance();
  Transformer transformer = factory.newTransformer();
  transformer.setOutputProperty(OutputKeys.INDENT, "yes");
  StringWriter sw = new StringWriter();
  StreamResult result = new StreamResult(sw);
  DOMSource source = new DOMSource(doc);
  transformer.transform(source, result);
  String xmlfile = sw.toString();
  System.out.println(xmlfile);
  }
}

Output of the program:-

 
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Information About Employees -->
<Company>
  <Employee Id="Rose-2345">
  <CompanyName>Newstrack</CompanyName>
  <City>Rohini</City>&gt;
  <name>Girish Tewari</name>
  <Phoneno>1234567890</Phoneno>
 <!-- CDATA node -->
 <Doj>Roseindia
  Roseindia.net &lt;"!@#$%'^&amp;*()&gt; is in Rohini
  Roseindia.net
  </Doj>
  </Employee>
</Company>


DownLoad Source Code

Advertisements

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: August 24, 2008

Related Tutorials

Discuss: Converting CDATA Nodes into Text Nodes  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:1
Rodel
March 6, 2013
zShgOEORMg

Try this dog movement beaiohvr.<MovingDogbeaiohvr implName="lang:beanshell:inline:"><![CDATA[import org.primordion.xholon.base.IXholon;import org.primordion.user.app.Bestiary.MovingBeastBehavior;public class MovingDogbeaiohvr extends MovingBeastBehavior { public void postConfigure() { setBeast(getParentNode()); } protected boolean canMoveThruDoor(IXholon door) { return false; }}new MovingDogbeaiohvr();]]></MovingDogbeaiohvr>
DMCA.com