Ignoring Comments While Parsing an XML File
This Example shows you how to Ignore Comments in an XML File. JAXP is an interface which provides parsing of xml documents. Here the Document BuilderFactory is used to create new DOM
parsers. Methods used in code given below for Ignoring Comments is described below:-
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
DocumentBuilder builder = Factory.newDocumentBuilder():-This method creates a DocumentBuilder object with the help of a DocumentBuilderFactory
File file = new File("Document4.xml"):-Creates a new File.
factory.setIgnoringComments(true):-This method describes that the parser produced by the above code will ignore comments.
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>
<Doj>May 2008</Doj>
</Employee>
<!-- Information about other Employee -->
<Employee Id="Rose-2346">
<CompanyName>RoseIndia.net</CompanyName>
<City>Lucknow</City>
<name>Mahendra Singh</name>
<Phoneno>123652314</Phoneno>
<Doj>May 2008</Doj>
</Employee>
</Company>
|
|
IgnoringComments.java
/*
* @Program for ignoring Comments While Parsing an XML File
* IgnoringComments.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 IgnoringComments {
public static void main(String[] args) throws Exception {
File file = new File("Document4.xml");
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
factory.setValidating(false);
// Ignores all the comments described in the XML File
factory.setIgnoringComments(true);
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(file);
new IgnoringComments().read(doc);
}
public void read(Document doc) throws Exception {
TransformerFactory factory1 =
TransformerFactory.newInstance();
Transformer transformer = factory1.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
StringWriter writer = new StringWriter();
StreamResult result = new StreamResult(writer);
DOMSource source = new DOMSource(doc);
transformer.transform(source, result);
String s = writer.toString();
System.out.println(s);
}
}
|
|
Output of the program:-
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Company>
<Employee Id="Rose-2345">
<CompanyName>Newstrack</CompanyName>
<City>Rohini</City>>
<name>Girish Tewari</name>
<Phoneno>1234567890</Phoneno>
<Doj>May 2008</Doj>
</Employee>
<Employee Id="Rose-2346">
<CompanyName>RoseIndia.net</CompanyName>
<City>Lucknow</City>
<name>Mahendra Singh</name>
<Phoneno>123652314</Phoneno>
<Doj>May 2008</Doj>
</Employee>
</Company>
|
|
DownLoad Source Code