从OffsetDateTime中删除分钟,秒和纳秒

时间:2016-11-08 14:48:01

标签: java java-time

是否有简洁的方法去除OffsetDateTime中的所有分钟,秒和纳秒?以下是我要做的事情。

final OffsetDateTime strippedTime = OffsetDateTime.now().withMinute(0).withSecond(0).withNano(0);
System.out.println(strippedTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.nnnnnnnnn")));

上面的代码告诉我:

2016-11-08 09:00:00.000000000

LocalTime.MIDNIGHT遗憾地剥离了物体的时间,所以对我来说没用。任何建议表示赞赏。

2 个答案:

答案 0 :(得分:11)

您可以OffsetDateTime.truncatedTo(TemporalUnit)使用ChronoUnit.HOURS

 OffsetDateTime.now().truncatedTo(ChronoUnit.HOURS)

答案 1 :(得分:3)

您可以使用OffsetDateTime.now().truncatedTo(ChronoUnit.HOURS)