Ich hatte die Möglichkeit, ein Programm zu schreiben, das Dateien erkennt, die älter als ○ Tage in Java sind, und werde es daher als Erinnerung belassen. Nur als Beispiel.
Datum ist ebenfalls möglich, aber versuchen Sie es mit dem neueren lokalen Datum.
Long lastModified = targetFile.lastModified();
LocalDate lastDate = Instant.ofEpochMilli(lastModified).atZone(ZoneId.systemDefault()).toLocalDate();
Dies erhält das Datum der letzten Änderung aus der in der Dateiklasse deklarierten Zieldatei. Bild der Konvertierung der Epochenzeit in den LocalDate-Typ.
LocalDate daysBefore = LocalDate.now().minusDays(5);
Holen Sie sich das heutige Datum mit now () der LocalDate-Klasse. Dieses Mal kann es von minusDays (5) abgerufen werden, das auf das Datum vor 5 Tagen abzielt.
if (lastModified.isBefore(base) || lastModified.isEqual(base))
if (lastModified.compareTo(base) <= 0)
if (lastModified.until(LocalDate.now(), ChronoUnit.DAYS) >= 5)
Wenn Sie danach eine if-Anweisung wie diese schreiben, sollten Sie in der Lage sein, Dateien vor dem angegebenen Datum zu brennen. Bitte beachten Sie, dass isBefore () alleine nur vor mehr als 5 Tagen eingenommen werden kann. Ich werde versuchen, es vor 5 Tagen mit isEqual () zu bekommen.
Nachtrag Kommentare von @swordone Bedingter Ausdruck für if-Anweisung hinzugefügt.
Es wäre schön, die File-Klasse hier einzufügen. Wenn Sie Vorschläge haben, kommentieren Sie bitte.
Recommended Posts