我有这个问题。我需要做到以下几点: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