是的,XmlDocument类可以支持XPath查询。您可以使用SelectSingleNode或SelectNodes方法来执行XPath查询,并获取匹配的节点或节点集合。以下是一个示例代码:
// 创建XmlDocument对象并加载XML文档
XmlDocument doc = new XmlDocument();
doc.Load("example.xml");
// 执行XPath查询
XmlNode node = doc.SelectSingleNode("//book[@id='1']");
if (node != null)
{
Console.WriteLine("Found book node with ID 1: " + node.OuterXml);
}
XmlNodeList nodes = doc.SelectNodes("//book");
if (nodes != null)
{
foreach (XmlNode bookNode in nodes)
{
Console.WriteLine("Book node: " + bookNode.OuterXml);
}
}
在上面的示例中,我们首先加载一个XML文档,然后执行两个不同的XPath查询。第一个查询使用SelectSingleNode方法查找具有id属性值为1的book节点,第二个查询使用SelectNodes方法查找所有book节点。您可以根据需要调整XPath表达式来执行不同的查询。