我想检查文件创建是否早于特定时间(天)。到目前为止,这是我获得文件创建时间的方式。
BasicFileAttributes attr = Files.readAttributes(path, BasicFileAttributes.class);
long fileCreationTime = attr.creationTime().toMillis();
现在我想检查这个文件是否是在X
天之前创建的。我该怎么做呢?我试图调查LocalDateTime但是很遗憾。
P.S:我不想使用任何外部库。
答案 0 :(得分:2)
试试这个:
long numberOfDays = 5L;
if (attr.creationTime().toInstant().isBefore(
Instant.now().minus(numberOfDays, ChronoUnit.DAYS)
)
) {
// do something
}
如果您想检查file
是否早于X个月,您可以继续下一个:
LocalDateTime dt = LocalDateTime.now();
ZonedDateTime zdt = dt.atZone(ZoneId.systemDefault());
long numberOfMonths = 5L;
if (attr.creationTime().toInstant().isBefore(
dt.minus(numberOfMonths, ChronoUnit.MONTHS).toInstant(zdt.getOffset())
)
) {
// do something
}