![]() |
| | #1 |
| Registered User Join Date: Dec 2003
Posts: 18
| XML Navigation <person> <name>Khelder</name> <age>21</age> </person> <person> <name>Redlehk</name> <age>25</age> </person> Given the program knows the name "Redlehk", how would you go about reading in his age, and then writing back to the XML file a new age. If anyone can show me how this is done, or point me to a resource, I would greatly appreciate it. Thanks, Khelder |
| Khelder is offline | |
| | #2 |
| Registered User Join Date: Aug 2001
Posts: 149
| Here is one way to do it. Suppose the XML file looks like this: person.xml Code: <?xml version="1.0" encoding="UTF-8"?> <persons xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <person> <name>Khelder</name> <age>21</age> </person> <person> <name>Redlehk</name> <age>25</age> </person> </persons> Code: using System;
using System.Xml;
namespace XmlTest
{
class XmlTest
{
[STAThread]
static void Main(string[] args)
{
// Load the Xml document
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("person.xml");
// Create an XmlTextWriter from the document
XmlTextWriter writer = new XmlTextWriter("person.xml", null);
writer.Formatting = Formatting.Indented;
// Loop through each person
XmlNodeList personList = xmlDoc.GetElementsByTagName("person");
for(int i = 0; i < personList.Count; i++)
{
XmlElement person = (XmlElement) personList[i];
// Get the person's name
XmlNodeList personNameList = person.GetElementsByTagName("name");
XmlElement personName = (XmlElement) personNameList[0];
// Get the person's age
XmlNodeList personAgeList = person.GetElementsByTagName("age");
XmlElement personAge = (XmlElement) personAgeList[0];
// Compare the data
if (personName.InnerText == "Redlehk")
personAge.InnerText = "44";
}
// Write the changes
xmlDoc.WriteContentTo(writer);
writer.Flush();
writer.Close();
}
}
}
David
__________________ One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them In the Land of Mordor where the Shadows lie. |
| Strider is offline | |
| | #3 |
| Registered User Join Date: Dec 2003
Posts: 18
| Thanks! That is exactly what I was looking for. Thank you. Ill try and implement it into my real project tonight, and I'll be back if I have some more questions. Thanks again, Khelder |
| Khelder is offline | |
![]() |
| Thread Tools | |
| Display Modes | |
|
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Parsing Xml | deviousdexter | C# Programming | 7 | 04-24-2009 06:29 AM |
| Dissecting an Excel XML spreadsheet | desmond5 | C++ Programming | 1 | 05-22-2008 04:32 PM |
| XML encoding issue | George2 | C# Programming | 1 | 05-16-2008 05:21 AM |
| XML and data exchange | seexml | C Programming | 0 | 04-27-2006 03:02 PM |
| Need help with this xml tree example | kzar | C Programming | 1 | 11-22-2004 11:23 AM |