This week's book giveaway is in the OO, Patterns, UML and Refactoring forum.
We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line!
See this thread for details.
The moose likes Java in General and the fly likes Set the TextValue  for the xml tag Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

JavaRanch » Java Forums » Java » Java in General
Bookmark "Set the TextValue  for the xml tag" Watch "Set the TextValue  for the xml tag" New topic

Set the TextValue for the xml tag

renu richard
Ranch Hand

Joined: Oct 06, 2008
Posts: 116

My requirement is... i have an xml file. In which i need to set the value for a tag.

Please refer to the xml file .My requirement is , say for the attached xml,

book tag is repeating. First i need to see which book is having the attribute 'id' as bk102. And then i need to find whether the value of title is "Midnight Rain". If its Midnight Rain then i need to update the value of "price" tag to 10. Currently it is 5.95..i need to change this to 10.

Can someone tell me which would be the best approach to do this.

Thanks !!!

David Newton

Joined: Sep 29, 2008
Posts: 12617

What have you tried so far? How are you parsing the XML?
renu richard
Ranch Hand

Joined: Oct 06, 2008
Posts: 116
I am using javax.xml.parsers.DocumentBuilder to read the xml file and using org.w3c.dom.Document for parsing the file. I could read the values of the tag , attributes using NodeList. But i am not sure how to set the value for the tag. I tried using setNodeValue for setting the value for the tag. But its not updating the value.

How can i set the value for the xml tag ??
Rob Spoor

Joined: Oct 27, 2005
Posts: 20077

Node has a method called setTextContent.

Alternatively you can create a org.w3c.dom.Text element by calling Document's createTextNode method. You can then call appendChild on the node to add it. You may want to remove all other children first:

How To Ask Questions How To Answer Questions
William Brogden
Author and all-around good cowpoke

Joined: Mar 22, 2000
Posts: 13000
Note that changing the DOM in memory does not automatically change the source document.
Have you checked out Aspose?
subject: Set the TextValue for the xml tag
jQuery in Action, 3rd edition