我有這個問題。我需要做到以下幾點:Groovy在分鐘得到今天的日期00:00:00
- 獲取今天的日期
- 使這將是今天的日期00:00:00
- 使這將是今天的日期在23:59另一個日期新日期: 59
例如,今天日期是12月 - 2012 19:00
我怎樣才能使一個新的日期,這將是12月 - 2012 00:00(當天開始)
,它可能似乎很容易,但我無法找到任何groovyway來獲得它,任何幫助將被折衷。
我有這個問題。我需要做到以下幾點:Groovy在分鐘得到今天的日期00:00:00
例如,今天日期是12月 - 2012 19:00
我怎樣才能使一個新的日期,這將是12月 - 2012 00:00(當天開始)
,它可能似乎很容易,但我無法找到任何groovyway來獲得它,任何幫助將被折衷。
來獲得日期在午夜使用Date.clearTime
(docs):
dateAtMidnight = new Date()
dateAtMidnight.clearTime()
(Javadoc中是Groovy的JDK < 2.0,clearTime()
聲明void
在Groovy JDK 2.0,防止d = new Date().clearTime()
註釋指明原始功能可以恢復!,耶而是採用<= 23:59:59
)
爲了進行比較,使用< (the next day)
:
(aDate >= dateAtMidnight) && (aDate < (dateAtMidnight + 1))
的另一種方式,但它設置日期時間(但它不會只是日期)
dateAtMidnight = new Date() dateAtMidnight.set(hourOfDay: 0, minute: 0, second: 0)
'Date.clearTime()'是一個Groovy JDK的方法,所以它的版本Groovy,而不是Grails。在Groovy 1.8.2中,它返回一個'Date' – 2012-01-13 09:54:28
@Don Right,在2.0中它是無效的。不知道Grails如何進入討論。 – 2012-01-13 11:32:55
@DaveNewton它回到了我認爲的日期,和他們做了Groovy 2 DateDefaultMethods重構的人聊天,它看起來像是一個疏忽,它返回了void# – 2012-01-13 12:35:53