|

1 类似xmlns=""的文件
示例XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<WebSrvMessage xmlns="http://www.lenoval.com/">
<version>1.0</version>
<DataContent>
<DateTag>2010-5-17</DateTag>
</DataContent>
</WebSrvMessage>
XmlDocument doc = new XmlDocument();
doc.Load(path);
XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
//添加命名空间,前缀可随意命名
nsmgr.AddNamespace("lvl", "http://www.lenoval.com/");
//在路径前面使用前面定义的前缀
XmlNode datatag = doc.DocumentElement.SelectSingleNode("lvl:QryDataContent/lvl:DateTag", nsmgr);
2 类似xmlns:xxxx=""的文件
如:xmlns:lenoval="http://www.lenoval.com/">
可在上面的代码中添加命名空间:
//添加命名空间,前缀可随意命名
nsmgr.AddNamespace("lenoval", "http://www.lenoval.com/");
//在路径前面使用前面定义的前缀
XmlNode datatag = doc.DocumentElement.SelectSingleNode("lenoval:QryDataContent/lenoval:DateTag", nsmgr);
- /// <summary>
- /// 读取网站地图xml
- /// </summary>
- /// <param name="code"></param>
- /// <returns></returns>
- public static List<string> GetUrl(string code)
- {
- List<string> list = new List<string>();
- XmlDocument d = new XmlDocument();
- d.Load(code);
- XmlNamespaceManager m = new XmlNamespaceManager(d.NameTable);
- m.AddNamespace("x", "http://www.sitemaps.org/schemas/sitemap/0.9");
- XmlNodeList url = d.SelectNodes("//x:url", m);
- foreach (XmlNode nd in url)
- {
- XmlNode loc = nd.SelectSingleNode("x:loc", m);
- list.Add(loc.InnerText);
- }
- return list;
- }
复制代码
|
上一篇:在c#中使用新版本中Newtonsoft中Javascrip去掉tConvert找不到的解决方法下一篇:c#读取xml文件节点内容
|