C#解析带命名空间前缀xml文档示例

string xml = "<mzwu:archives xmlns:mzwu=\"http://www.mzwu.com/\">" +
            "<mzwu:archive>" +
            "<mzwu:name>标题一</mzwu:name>" +
            "<mzwu:url>http://www.mzwu.com/article.asp?id=1</mzwu:url>" +
            "</mzwu:archive>" +
            "<mzwu:archive>" +
            "<mzwu:name>标题二</mzwu:name>" +
            "<mzwu:url>http://www.mzwu.com/article.asp?id=2</mzwu:url>" +
            "</mzwu:archive>" +
            "</mzwu:archives>";
                    
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xml);
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xmlDoc.NameTable);
nsmgr.AddNamespace("mzwu", "http://www.mzwu.com/");
XmlNodeList nodeList = xmlDoc.SelectNodes("/mzwu:archives/mzwu:archive/mzwu:name", nsmgr);
foreach (XmlNode node in nodeList)
{
    Console.WriteLine(node.InnerText);
}

注意:XPath表达式中要带命名空间前缀。

评论: 0 | 引用: 0 | 查看次数: 3902
发表评论
登录后再发表评论!