给定一个时间段,例如 3 天或 5 周(只有一种字段类型的时间段),我想将给定的时间四舍五入DateTime
到该时间段的最接近的单位(即,忽略“5 天”中的 5)。例子:
示例 1:
- 周期: 3天。
- 日期时间: UTC 星期三凌晨 4:26 (2013-05-15T04:26:00Z)
- 四舍五入的日期时间: UTC 周三午夜 (2013-05-15T00:00:00Z)
示例 2:
- 周期: 5周。
- 日期时间: UTC 星期三凌晨 4:26 (2013-05-15T04:26:00Z)
- 四舍五入的日期时间: UTC 星期一午夜 (2013-05-13T00:00:00Z)
我最初的想法是使用Period
'sDurationFieldType getFieldTypes()
方法,并且对于 a 中的每个匹配字段DateTime
(在最大字段下方),将它们设置为零。但是,我不知道如何DateTimeFieldType
从 a 获取 sDateTime
以及如何将它们与 a 进行比较DurationFieldType
。
我宁愿不做一个巨大的if else
方法。