Adding a CDATA Section to a DOM Document

If `]]>' appears in the CDATA section's text, the default XML writers in J2SE 1.4 automatically break the CDATA section into two CDATA sections; `]]' will appear at the end of the first section while `>' will appear at the beginning of the second section.
// Obtain an XML document; this method is implemented in // The Quintessential Program to Create a DOM Document from an XML File Document doc = parseXmlFile("infilename.xml", false); // Add a CDATA section to the root element Element element = doc.getDocumentElement(); CDATASection cdata = doc.createCDATASection("data"); element.appendChild(cdata); // If "]]>" appears in the text, two CDATA sections will be written out cdata = doc.createCDATASection("more]]>data"); element.appendChild(cdata);
This is the sample input for the example:
<?xml version="1.0" encoding="UTF-8"?> <map> <entry key="key1" value="value1" /> <entry key="key2" /> </map>
The resulting XML from running the example is:
<?xml version="1.0" encoding="UTF-8"?> <map> <entry key="key1" value="value1"/> <entry key="key2"/> <![CDATA[data]]><![CDATA[more]]]]><![CDATA[>data]]></map>

Post a comment

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image. Ignore spaces and be careful about upper and lower case.