首页 > 解决方案 > 如何在 Instant 中删除日期并仅保留日期?

问题描述

所以我有两个来自 JAVA8 的 Instant, Instant time1 = Instant.parse("2020-11-03T11:35:02.510Z") Instant time2 = Instant.parse("2020-10-03T07:15:22.432Z") 我想删除这两个瞬间的日期信息,只保留时间(即时区的小时、分钟、秒和毫秒)并比较它们。我可以知道该怎么做吗?感谢你的帮助!

标签: datejava-8

解决方案


像这样。但是您需要为日期提供适当ZoneId的,当然还有任何特殊的格式。这使用 LocalDate 的toString()方法。

Instant time1 = Instant.parse("2020-11-03T11:35:02.510Z");
LocalDate ld = LocalDate.ofInstant(time1,ZoneId.of("GMT"));
System.out.println(ld);

由于您有要解析的字符串,因此您可以这样做。

LocalDate ld1 = LocalDateTime.parse("2020-1103T11:35:02.510Z",
        DateTimeFormatter.ISO_OFFSET_DATE_TIME)
      .toLocalDate();

印刷

2020-11-03
        

推荐阅读