在这样的xml文件中
<log>
<DateTime> 2008-03-08T16:07:41 </DateTime>
<eventID> sessionOpened </eventID>
<user> beardu@hotmail.com </user>
我想筛选出某时间段的元素,要是想用xpath怎么实现?
或者用xquery或xslt怎么实现?
另问:有什么比较好的
符合http://www.w3.org/TR/xquery-operators/的c#实现库
在线等答案,迅速结贴,望高手帮助xml文件
<?xml version="1.0" encoding="utf-8"?>
<root xmlns:xs="http://www.w3.org/2001/XMLSchema">
<log>
<Date> 2003-01-02T11:30:00-05:00 </Date>
<user> xxx@hotmail.com </user>
</log>
</root>
我从microsoft网站的how to上抄了一个例子,稍改了一下
XmlDocument oxmldoc = new XmlDocument();
oxmldoc.Load("test.xml");
XPathNavigator oXPathNav;
oXPathNav = oxmldoc.CreateNavigator();
XPathExpression Expr;
Expr = oXPathNav.Compile("//log[Date=xs:dateTime("2003-01-02T11:30:00-05:00")]");
XmlNamespaceManager oxmlNSManager = new XmlNamespaceManager(oXPathNav.NameTable);
oxmlNSManager.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
Expr.SetContext(oxmlNSManager);
XPathNodeIterator iterator = oXPathNav.Select(Expr);
执行到Expr.SetContext(oxmlNSManager);
报错“由于存在未知的函数,此查询需要 XsltContext。”
哪位老大能指点一下吗
最新评论共有 0 位网友发表了评论
查看所有评论
发表评论
热点关注

