Core Java| JSP| Servlets| XML| EJB| JEE5| Web Services| J2ME| Glossary| Questions?

 

 

 

 

 

 

 

 

 

 

 

 

 

Search Tutorials

Latest Questions
Comments
 
Locate a Node and Change Its Content 
 

In this section, you will learn how to change the Content of a node in a DOM document.

 

Locate a Node and Change Its Content

                         

This Example shows you how to Change the Content of a 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. These are some of the methods used in code given below for adding attribute:-

Element root = doc.getDocumentElement():-direct access to the root of the DOM document.

NodeList childnodelist = root.getChildNodes():-created a childnodelist and get the collection of child nodes of this node.

Xml code for the program generated is:-

<?xml version="1.0" encoding="UTF-8"?>
<Company>
    <Employee>
        <Employeename>Girish Tewari</Employeename>
        <email>girish@gmail.com</email>
    </Employee>
    <Employee>
        <Employeename>Komal</Employeename>
        <email>Komal@gmail.com</email>
    </Employee>
    <Employee>
        <Employeename>Mahendra</Employeename>
        <email>dhoni@gmail.com</email>
    </Employee>
</Company>

Changecontent.java :-

 

/* 
 * @Program that Locate a Node and Change Its Content
 * UsingSibling.java 
 * Author:-RoseIndia Team
 * Date:-09-Jun-2008
 */

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

public class Changecontent {

    public static void main(String[] args) throws Exception {
        boolean validating = false;
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        factory.setValidating(validating);

        Document doc = factory.newDocumentBuilder().parse(new File("2.xml"));
        new Changecontent().changeContent(doc, "Girish Tewari""@Rose.com");
}
    public void changeContent(Document doc, String newname, String newemail) {

        Element root = doc.getDocumentElement();
        
        //creating a nodelist
        NodeList childnodelist = root.getChildNodes();
        for (int i = 0; i < childnodelist.getLength(); i++) {
            
            Node childnode = childnodelist.item(i);
            Node subchildname = childnode.getFirstChild();
            Text text = (Text) subchildname.getFirstChild();
            String oldname = text.getData();
            //compares oldname with newname
            if (oldname.equals(newname)) {
                //gets the next node of the subchild
                subchildname=subchildname.getNextSibling();
                System.out.println(subchildname.getNodeName());
                text =(Text)subchildname.getFirstChild();
                System.out.println("Old e-mail id: "+text.getData());
                text.setData(newemail);
                System.out.println("New e-mail id: "+text.getData());
            }

        }

    }
}

Output of the program:-

email
Old e-mail id: girish@gmail.com
New e-mail id: @Rose.com

 

DownLoad Source Code

                         

» View all related tutorials
Related Tags: .net c xml string http com file orm form xsd schema reference io mail namespace get version type default dtd

Leave your comment:

Name:

Email:

URL:

Title:

Comments:


Enter Code:

Audio Version
Reload Image
 

Note: Emails will not be visible or used in any way, and are not required. Please keep comments relevant. Any content deemed inappropriate or offensive may be edited and/or deleted.

No HTML code is allowed. Line breaks will be converted automatically. URLs will be auto-linked. Please use BBCode to format your text.

Add This Tutorial To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Training Courses
Tell A Friend
Your Friend Name
Software Solutions
Least Viewed
Most Rated
Recently Viewed
Search Tutorials

 

 
 

Home | JSP | EJB | JDBC | Java Servlets | WAP  | Free JSP Hosting  | Search Engine | News Archive | Jboss 3.0 tutorial | Free Linux CD's | Forum | Blogs

About Us | Advertising On RoseIndia.net  | Site Map

India News

Indian Software Development Company | iPhone Development Company in India | Flex Development Company in India | Java Training Delhi | Java Training at Noida |

Send your comments, Suggestions or Queries regarding this site at roseindia_net@yahoo.com.

Copyright © 2008. All rights reserved.