C# XML - XmlNode and XmlAttribute
1 public static string TestXML(string path) 2 { 3 4 XmlDocument doc = new XmlDocument(); 5 doc.Load(path); 6 7 XmlNode root = doc.FirstChild; 8 ParseXmlNode(root); 9 10 XmlNode nextNode = root.NextSibling; 11 while (nextNode != null) 12 { 13 ParseXmlNode(nextNode); 14 nextNode = nextNode.NextSibling; 15 } 16 17 return ""; 18 } 19 20 public static void ParseXmlNode(XmlNode root) 21 { 22 if (root == null) 23 { 24 return; 25 } 26 27 bool hasChild = root.HasChildNodes; 28 if (hasChild) 29 { 30 for (int i = 0; i < root.ChildNodes.Count; i++) 31 { 32 XmlNode childnode = root.ChildNodes[i]; 33 34 XmlAttributeCollection attrlist = childnode.Attributes; 35 XmlAttribute kifattr = null; 36 string childNodeName = childnode.Name; 37 if (attrlist != null) 38 { 39 kifattr = attrlist["KifSchema"]; 40 } 41 if (kifattr != null) 42 { 43 Console.WriteLine(childNodeName + "\t" + kifattr); 44 } 45 46 ParseXmlNode(childnode); 47 } 48 } 49 else 50 { 51 Console.WriteLine("name is: " + root.Name + " value is: " + root.InnerText); 52 //Console.WriteLine(); 53 } 54 }