Insert a Processing Instruction and a Comment Node

This Example shows you how to Insert a Processing Node
and Comment Node 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 Inserting Nodes:-
ProcessingInstruction instruction =
doc.createProcessingInstruction("open", "close"):- This
method creates a ProcessingInstruction with the specified target name and data string. Here
target name is "open" and data string is
"close".
root.insertBefore(instruction, node):- This method
inserts a new child node before an existing child node. Here new node is
instruction and existing node is node.
Element root = doc.getDocumentElement():- This method
creates an instance of an XMLDOMElement.
Comment c = doc.createComment("Roseindia.net is an
It company"):- This method creates a Comment Node. Here "Roseindia.net
is an It company" is a string that specifies the data for the node.
Xml code for the program generated is:-
<?xml version="1.0" encoding="UTF-8"?>
<Company>
<Location>
<Companyname>Roseindia .Net</Companyname>
<Employee>Girish Tewari</Employee>
</Location>
<Id>
</Id>
</Company>
|
InsertProcessingInstruction.java
/*
* @Program that Insert a Processing Instruction and a Comment
* InsertProcessingInstruction.java
* Author:-RoseIndia Team
* Date:-10-Jun-2008
*/
import java.io.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
public class InsertProcessingInstruction {
public static void main(String[] args) throws Exception {
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
builderFactory.setValidating(false);
Document doc = builderFactory.newDocumentBuilder().parse(new File("Document4.xml"));
new InsertProcessingInstruction().ProcessingInstruction(doc);
new InsertProcessingInstruction().comment(doc);
}
public void ProcessingInstruction(Document doc) {
Element root = doc.getDocumentElement();
Node node = root.getLastChild();
//creates a ProcessingInstruction with the specified target name and data string
ProcessingInstruction instruction =
doc.createProcessingInstruction("open", "close");
root.insertBefore(instruction, node);
System.out.println("ProcessingInstruction created is: " + root.getFirstChild().
getNextSibling());
}
public void comment(Document doc) {
Element root = doc.getDocumentElement();
Node n = root.getFirstChild();
Comment c = doc.createComment("Roseindia.net is an It company");
//inserts a new node before an existing node.
root.insertBefore(c, n);
System.out.println("Commentnode inserted is: " + root.getFirstChild());
}
} |
Output of the program:
ProcessingInstruction created is: [open: close]
Commentnode inserted is: [#comment: Roseindia.net is an It company]
|
Download SourceCode

|