我已經找到了高和低,並發現一些XPATH非常有趣的功能,但是,我還沒有找到一種方法來測試日期。XPath測試日期
我有一個Date屬性,我想用來獲取節點的集合。
<History>
<item>
<Name>string</Name>
<Location>string</Location>
<VisitDate>01/08/2013</VisitDate>
<Description>string</Description>
</item>
</History>
XPath代碼愉快地找到一個等號,但我需要執行=>測試。
Dim doc As New Xml.XmlDocument
doc.Load(filename)
Dim d As Date = DateAdd(DateInterval.Day, -7, Today)
s = "//History/item[VisitDate=>'" & d.ToString("dd/MM/yyyy") & "']"
Dim nodes As Xml.XmlNodeList = doc.SelectNodes(s)
現在這是行不通的。它在SelectNodes(s)
處出錯,所以它顯然不喜歡「>」位。
XPath中是否有「Date」函數,我找到了boolean()
; concat()
; true()
; not true()
; translate()
; substring()
等,我假設我將最終必須使用這些,也許其他人的組合,但我不知道如何做「大於」......
是有沒有人瞭解這方面的XPath?
我不能格式化這個,我不能「回答」,所以原諒閱讀這個難點---------所以,下面是一個合理的解決方案? --------- Dim d As Date = DateAdd(DateInterval.Day,-2,Today)--------- s =「// History/item [translate(substring( VisitDate,1,string-length(substring-before(VisitDate,''))),' - ','')>「&d.ToString(」yyyyMMdd「)&」']「------- - 我已將所有日期更改爲--------- yyyy-mm-dd hh:mm --------- 按照您的建議使用XML。我還將DateAdd更改爲-2,以便我可以執行「>」 –
是的,這看起來應該起作用。 – Ben
好吧,除了我之前的流言單引號外,這個工程!是!非常感謝所有人...... –