Mega Code Archive

 
Categories / C# Tutorial / XML
 

Loop Through XmlDocument Recursively

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Xml;    public class MainClass    {       public static void Main()       {          XmlDocument document = new XmlDocument();          document.Load("Books.xml");          RecurseXmlDocument((XmlNode)document.DocumentElement);       }       private static void RecurseXmlDocument(XmlNode root)       {          if (root is XmlElement)           {             Console.WriteLine(root.Name);             if (root.HasChildNodes)                RecurseXmlDocument(root.FirstChild);             if (root.NextSibling != null)                RecurseXmlDocument(root.NextSibling);          }          else if (root is XmlText)          {             string text = ((XmlText)root).Value;             Console.WriteLine(text);          }          else if (root is XmlComment)          {             string text = root.Value;             Console.WriteLine(text);             if (root.HasChildNodes)                RecurseXmlDocument(root.FirstChild, indent + 2);             if (root.NextSibling != null)                RecurseXmlDocument(root.NextSibling, indent);          }       }    }