Saturday 12, Apr 2025
We are moved to new domain
Click -> www.ehowtonow.com
Saturday, 9 November 2013

Modify XML file using DOM Parser


In this tutorials we going to see how to modify (add new element, update attribute, update element, delete element )the existing XML document using DOM parser
1. Create Project Called JavaXML.
2. Create package called com.javatutorialscorner.xml.dom under JavaXML.
3. Create Java class called ModifyXML.java under com.javatutorialscorner.xml.dom package.
ModifyXML.java
package com.javatutorialscorner.xml.dom;

import java.io.File;
import java.io.IOException;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class ModifyXML {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

try {
File xmlFile = new File("C:\\jtc\\student.xml");
DocumentBuilderFactory builderFactory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = builderFactory.newDocumentBuilder();
Document document = builder.parse(xmlFile);

// get first element node of root node
Node studentNode = document.getElementsByTagName("student").item(0);

// add new Element
Element year = document.createElement("year");
year.appendChild(document.createTextNode("final year"));
studentNode.appendChild(year);

// update attribute
NamedNodeMap arrtMap = studentNode.getAttributes();
Node attrNode = arrtMap.getNamedItem("id");
attrNode.setTextContent("ECE-01");

NodeList nodeList = studentNode.getChildNodes();

for (int i = 0; i < nodeList.getLength(); i++) {
Node node = nodeList.item(i);

if ("lastname".equals(node.getNodeName())) {
// update text node
node.setTextContent("k");
}
if ("department".equals(node.getNodeName())) {
studentNode.removeChild(node);
}
}

TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();
DOMSource domSource = new DOMSource(document);
StreamResult streamResult = new StreamResult(new File(
"C:\\jtc\\student.xml"));
transformer.transform(domSource, streamResult);

} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (TransformerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

}

student.xml

Original XML file

<?xml version="1.0" encoding="UTF-8"?>
<college>
<student id="1">
<firstname>Shiva</firstname>
<lastname>Kumar</lastname>
<department>ECE</department>
</student>
<student id="2">
<firstname>Appu</firstname>
<lastname>T</lastname>
<department>CSE</department>
</student>
</college>

Now run the program see the XML file modified.

Modified XML file

<?xml version="1.0" encoding="UTF-8" standalone="no"?><college>
<student id="ECE-01">
<firstname>Shiva</firstname>
<lastname>k</lastname>
<year>final year</year>
</student>
<student id="2">
<firstname>Appu</firstname>
<lastname>T</lastname>
<department>CSE</department>
</student>
</college>

Shop and help us

Flipkart Offer Snapdeal offer Amazon.in offer Amazon.com offer

Related Posts:

  • Read XML File using SAX ParserIn this tutorial we are going to see how to read XML file using SAX parser.1. Create Project Called JavaXML. 2. Create package called com.javatutorialscorner.xml.sax under JavaXML. 3. Create Java class called ReadXMLFile.java… Read More
  • Modify XML file using DOM ParserIn this tutorials we going to see how to modify (add new element, update attribute, update element, delete element )the existing XML document using DOM parser 1. Create Project Called JavaXML. 2. Create package called com.j… Read More
  • Read UTF-8 XML file using SAX ParserIn this tutorial we are going to see how to read XML file with UTF-8 character using SAX parser. 1. Create Project Called JavaXML. 2. Create package called com.javatutorialscorner.xml.sax under JavaXML. 3. Create Java class… Read More
  • JAXP – Java API for XML Processing – DOM Parser The Java API for XML Processing (JAXP) is for processing XML document using application written in Java programming language.JAXP contains following parsers SAX  -Simple API for XML Parsing. DOM - Document Object Mode… Read More
  • Count XML Element using DOM parserIn this tutorials we going to see how to count the element in XML document using DOM parser . 1. Create Project Called JavaXML. 2. Create package called com.javatutorialscorner.xml.dom under JavaXML. 3. Create Java class cal… Read More
  • Blogger Comments
  • Facebook Comments
  • Disqus Comments

0 comments:

Post a Comment

Item Reviewed: Modify XML file using DOM Parser Rating: 5 Reviewed By: eHowToNow