Change a particular node in XML : DOM Edit « XML « Java






Change a particular node in XML

      

import java.io.File;

import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathFactory;

import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;

public class Main {
  public static void main(String[] args) throws Exception {
    Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(
        new InputSource("data.xml"));

    XPath xpath = XPathFactory.newInstance().newXPath();
    NodeList nodes = (NodeList) xpath.evaluate("//employee/name[text()='old']", doc,
        XPathConstants.NODESET);

    for (int idx = 0; idx < nodes.getLength(); idx++) {
      nodes.item(idx).setTextContent("new value");
    }
    Transformer xformer = TransformerFactory.newInstance().newTransformer();
    xformer.transform(new DOMSource(doc), new StreamResult(new File("data_new.xml")));
  }
}

   
    
    
    
    
    
  








Related examples in the same category

1.Creates element node, attribute node, comment node, processing instruction and a CDATA section
2.Java DOM edit: Locate a Node and Change Its Content
3.Java DOM edit: Locating a Node by Using Siblings
4.Java DOM edit: Delete the First Child of the Root Node
5.Java DOM edit: Replacing an Existing Node with a New One
6.Java DOM edit: Add an Element Containing All Names
7.Java DOM edit: Duplicate a Subtree
8.Java DOM edit: Adding an Attribute to an Element
9.Java DOM edit: Deleting Two Attributes
10.Java DOM edit: Copying Attributes
11.Java DOM edit: A Method to Find an ID Value and Print the Element Text
12.Java DOM edit: Modifying Text by Replacement
13.Java DOM edit: Modifying Text by Cutting and Pasting
14.Java DOM edit: Edit Text by Insertion and Replacement
15.Java DOM edit: Replacing a Text Node with a New CDATASection Node
16.Java DOM edit: Splitting One Text Node into Three
17.Java DOM edit: Normalize All of the Text in a Document
18.Java DOM edit: Creates a New DOM Parse Tree
19.Java DOM edit: Copy a Node from One Parse Tree into Another
20.Java DOM edit: Creating a DocumentFragment Subtree and Appending to the Document
21.Java DOM edit: Insert a Processing Instruction and a Comment
22.XML Tree Dumper 2
23.A Method for Inserting a New Entry in a List
24.Add a comment at the beginning of the document
25.Create a new element and move the middle text node to it
26.Insert the new element where the middle node used to be
27.Set text in a Node
28.Copies the source tree into the specified place in a destination tree.
29.Copy a Node from one source document
30.Generates a DOM from scratch. Writes the DOM to a String using an LSSerializer.
31.Create Element With Text