How do I read and parse an XML file in C#?


Question

How do I read and parse an XML file in C#?

1
328
3/19/2009 11:03:42 PM

XmlDocument to read an XML from string or from file.

XmlDocument doc = new XmlDocument();
doc.Load("c:\\temp.xml");

or

doc.LoadXml("<xml>something</xml>");

then find a node below it ie like this

XmlNode node = doc.DocumentElement.SelectSingleNode("/book/title");

or

foreach(XmlNode node in doc.DocumentElement.ChildNodes){
   string text = node.InnerText; //or loop through its children as well
}

then read the text inside that node like this

string text = node.InnerText;

or read an attribute

string attr = node.Attributes["theattributename"]?.InnerText

Always check for null on Attributes["something"] since it will be null if the attribute does not exist.

431
12/7/2015 10:42:13 AM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon