This C# program demonstrates how to select a set of XML nodes from an existing XML document.
using System; using System.Xml; using System.Xml.Serialization; namespace XoaX { class Program { static void Main(string[] args) { // Create the XmlDocument. XmlDocument qXmlDoc = new XmlDocument(); qXmlDoc.LoadXml("<?xml version='1.0' ?>" + "<virtues>" + "<virtue type='cardinal'>" + "<name>Prudence</name>" + "<definition>It discerns our true good and chooses the right means of " + "achieving it.</definition>" + "</virtue>" + "<virtue type='theological'><name>Faith</name></virtue>" + "<virtue type='lively'><name>Chastity</name></virtue>" + "<virtue type='lively'><name>Humility</name></virtue>" + "</virtues>"); // Serialize the XML document to display it. Console.WriteLine("The XML Document:"); XmlSerializer qXmlSerializerNode = new XmlSerializer(typeof(XmlDocument)); qXmlSerializerNode.Serialize(Console.Out, qXmlDoc); // Serialize the XML nodes to display them. Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Selected Nodes:"); XmlNodeList qNodes = qXmlDoc.SelectNodes("virtues/virtue"); foreach (XmlNode qNode in qNodes) { XmlSerializer qXmlNodeSerializer = new XmlSerializer(typeof(XmlNode)); qXmlNodeSerializer.Serialize(Console.Out, qNode); } } } }
The XML Document: <?xml version="1.0" encoding="IBM437"?> <virtues> <virtue type="cardinal"> <name>Prudence</name> <definition>It discerns our true good and chooses the right means of achieving it.</definition> </virtue> <virtue type="theological"> <name>Faith</name> </virtue> <virtue type="lively"> <name>Chastity</name> </virtue> <virtue type="lively"> <name>Humility</name> </virtue> </virtues> Selected Nodes: <?xml version="1.0" encoding="IBM437"?> <virtue type="cardinal"> <name>Prudence</name> <definition>It discerns our true good and chooses the right means of achieving it.</definition> </virtue><?xml version="1.0" encoding="IBM437"?> <virtue type="theological"> <name>Faith</name> </virtue><?xml version="1.0" encoding="IBM437"?> <virtue type="lively"> <name>Chastity</name> </virtue><?xml version="1.0" encoding="IBM437"?> <virtue type="lively"> <name>Humility</name> </virtue>Press any key to continue . . .
© 20072025 XoaX.net LLC. All rights reserved.