重复:这是Best practices to parse xml files with C#?和其他许多内容的重复(请参阅https://stackoverflow.com/search?q=c%23+parse+xml)。请关闭它,不要回答。
如何从C#中自下而上解析XML文档?
例如:
<Employee>
<Name> Test </name>
<ID> 123 </ID>
<Employee>
<Company>
<Name>ABC</company>
<Email>test@ABC.com</Email>
</company>
像这些有很多节点..我需要从下往上开始解析,如...解析<company>
,然后依此类推......如何在C#中解决这个问题?
答案 0 :(得分:61)
试试这个:
XmlDocument doc = new XmlDocument();
doc.Load(@"C:\Path\To\Xml\File.xml");
或者,如果您在字符串中使用XML,请使用LoadXml
方法。
加载后,您可以使用SelectNodes
和SelectSingleNode
查询特定值,例如:
XmlNode node = doc.SelectSingleNode("//Company/Email/text()");
// node.Value contains "test@ABC.com"
最后,请注意您的XML无效,因为它不包含单个根节点。必须是这样的:
<Data>
<Employee>
<Name>Test</Name>
<ID>123</ID>
</Employee>
<Company>
<Name>ABC</Name>
<Email>test@ABC.com</Email>
</Company>
</Data>