I am new to C# and I am trying to read an XML file and transfer its contents to C# object(s).
e.g. An example XML file could be:
<people>
<person>
<name>Person 1</name>
<age>21</age>
</person>
<person>
<name>Person 2</name>
<age>22</age>
</person>
</people>
.. could be mapped to an array of C# class called 'Person':
Person[] people;
Where a Person object could contain the following fields:
string name;
uint age;
XmlWriter class contains the functionality to write to XML documents. It is an abstract base class used through XmlTextWriter and XmlNodeWriter classes. It contains methods and properties to write to XML documents.
It sounds like you want use XML serialization. There is a lot already out there, but this is a pretty simple example. http://www.switchonthecode.com/tutorials/csharp-tutorial-xml-serialization
The snippet you want is about 1/4 of the way down:
XmlSerializer deserializer = new XmlSerializer(typeof(List<Movie>));
TextReader textReader = new StreamReader(@"C:\movie.xml");
List<Movie> movies;
movies = (List<Movie>)deserializer.Deserialize(textReader);
textReader.Close();
Hopefully, this helps
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With