如何使用groovy从datetime字段中提取时间并仅将时间修改为9:00 PM?

时间:2019-03-13 09:25:33

标签: groovy jira

我正在尝试跨2个datetime字段复制值。复制时,我想将时间设置为9:00 PM,并按原样传递日期值。

任何人都可以帮忙吗

2 个答案:

答案 0 :(得分:0)

我不确定我是否理解您的问题,但是如果您想将java.util.Date的时间部分设置为9PM,则应该这样做

Date date = new Date()
date.clearTime()
date.set((Calendar.HOUR_OF_DAY): 21)

但是,这会就地修改源Date对象。为避免这种情况,请改用以下内容:

Date date = new Date()    
Date dateAt9PM = new Date(date.getTime()).clearTime()
dateAt9PM.set((Calendar.HOUR_OF_DAY): 21)

答案 1 :(得分:0)

您还可以使用一些常规魔术(C)

Date orig = new Date() + 10
Datew newDate = orig.updated( hourOfDay:19, minute:42, second:33 )

给予

  

2019年3月23日星期六19:42:33 UTC