Рубрики
Без рубрики

Определение даты создания файла в Java

JDK 7 представил способ просмотра даты создания файла. Узнайте, что это такое.

Автор оригинала: Łukasz Ryś.

1. Обзор

В JDK 7 появилась возможность получить дату создания файла.

В этом уроке мы узнаем, как получить к нему доступ через java.nio .

2. Files.getAttribute

Один из способов получить дату создания файла – использовать метод Files.getAttribute с заданным Путем :

try {
    FileTime creationTime = (FileTime) Files.getAttribute(path, "creationTime");
} catch (IOException ex) {
    // handle exception
}

Тип CreationTime – это FileTime , но из-за того, что метод возвращает Объект, мы должны привести его .

FileTime содержит значение даты в качестве атрибута метки времени. Например, он может быть преобразован в Instant с помощью метода to Instant () .

Если файловая система не хранит дату создания файла, то метод вернет null .

3. Файлы.Атрибуты чтения

Другой способ получить дату создания-с помощью Files.readAttributes , который для заданного Пути возвращает все основные атрибуты файла сразу:

try {
    BasicFileAttributes attr = Files.readAttributes(path, BasicFileAttributes.class);
    FileTime fileTime = attr.creationTime();
} catch (IOException ex) {
    // handle exception
}

Метод возвращает атрибуты BasicFileAttributes, которые мы можем использовать для получения основных атрибутов файла. Метод creation Time() возвращает дату создания файла как File Time .

На этот раз, если файловая система не хранит дату создания файла, то метод вернет дату последнего изменения . Если дата последнего изменения также не сохранена, то будет возвращена эпоха (01.01.1970).

4. Заключение

В этом уроке мы узнали, как определить дату создания файла в Java. В частности, мы узнали, что можем сделать это с помощью Files.getAttribute и Files.readAttributes .

Как всегда, код для примеров доступен на GitHub .