I need to parse a xml file and need to join the results from node ‘driver’.
Every ‘brand’ node is unique.
Sample xml file:
<brand name = "ford">
<transport category="car">
<driver name="John, Doe"/>
<driver name="Jane, Doe"/>
</transport>
</brand>
<brand name = "opel">
<transport category="car">
<driver name="Jerry, Smith"/>
<driver name="Jeff, Perry"/>
</transport>
</brand>
Expected result:
John, Doe - Jane, Doe
Jerry, Smith - Jeff, Perry
My code so far:
XmlTextReader reader = new XmlTextReader(@"D:\myfile.xml");
while (reader.Read())
{
if (reader.Name == "brand")
{
XmlReader inner = reader.ReadSubtree();
while (inner.Read()) ;
if (reader.Name == "driver")
{
string drvNames = reader.GetAttribute("name");
}
}
}
I can’t get the result(s) for ‘driver’.
There’s one or multiple ‘driver’ nodes.
Language C#
You can use Linq to Xml:
If you can’t load whole file into memory: