1

问题:

我有一个文件目录,其中有一个创建日期。

我想要达到的是获取创建日期日、月和年的值。

但是,我正在使用 FileTime。

我期待能够调用 GetMonth 方法等。

不幸的是,这是不可能的,有人知道一个很好的解决方案来获取 FileTime 的日/月/年吗?

我尝试了什么:

  • 我试图将其转换为 Date 类型。这是可能的,但这里不推荐使用日、月和年方法。

  • 我曾尝试使用获取 FileTime 的毫秒数,但这感觉不是一个很好的解决方案。

最后一个问题: 如何获取 FileTime 的日、月和年?

谢谢转发。

4

1 回答 1

5

FileTime➙➙ Instant_ZonedDateTime

我假设您使用的是 Java 8 或更高版本。您必须将 转换FileTimeInstant. 然后,您可以将 aZoneId应用于Instant以获取ZonedDateTime您想要日期所在的时区的对象。下面的代码将FileTime日期转换为India time

val zonedTime = fileTime.toInstant().atZone(ZoneId.of("Asia/Kolkata"))
println(zonedTime.year)
println(zonedTime.monthValue)
println(zonedTime.dayOfMonth)
于 2019-09-10T03:08:38.260 回答