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

Как получить дату последнего изменения файла на Java

В Java мы можем использовать атрибуты `Basicfileattributes.время последнего изменения()`, чтобы получить дату последнего изменения файла.

В Java мы можем использовать Files.readAttributes() для получения метаданных или атрибута файла, а затем LastModifiedTime() для отображения даты последнего изменения файла.

  Path file = Paths.get("/home/mkyong/file.txt");

  BasicFileAttributes attr = Files.readAttributes(file, BasicFileAttributes.class);

  System.out.println("lastModifiedTime: " + attr.lastModifiedTime());

1. Атрибуты базового файла (NIO)

В этом примере используется java.nio. * для отображения атрибутов файла или метаданные – время создания, время последнего доступа и время последнего изменения.

package com.mkyong.io.howto;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.BasicFileAttributes;

public class GetLastModifiedTime1 {

    public static void main(String[] args) {

        String fileName = "/home/mkyong/file.txt";

        try {

            Path file = Paths.get(fileName);
            BasicFileAttributes attr =
                Files.readAttributes(file, BasicFileAttributes.class);

            System.out.println("creationTime: " + attr.creationTime());
            System.out.println("lastAccessTime: " + attr.lastAccessTime());
            System.out.println("lastModifiedTime: " + attr.lastModifiedTime());

        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}

Выход

creationTime: 2020-07-20T09:29:54.627222Z
lastAccessTime: 2020-07-21T12:15:56.699971Z
lastModifiedTime: 2020-07-20T09:29:54.627222Z

Атрибут BasicFileAttributes также работает для каталога, и мы можем использовать тот же код для отображения времени последнего изменения каталога.

Дальнейшее чтение Прочитайте этот пример, чтобы преобразовать файловое время в другой формат даты и времени .

2. Файл.LastModified (устаревший ввод-вывод)

Для устаревшего ввода-вывода мы можем использовать File.LastModified() , чтобы получить время последнего изменения; метод возвращает длинное значение, измеренное в миллисекундах с момента [эпохи](https://en.wikipedia.org/wiki/Epoch_ (вычисления). Мы можем использовать SimpleDateFormat , чтобы сделать его более удобочитаемым форматом.

package com.mkyong.io.howto;

import java.io.File;
import java.text.SimpleDateFormat;

public class GetLastModifiedTime2 {

    public static void main(String[] args) {

        String fileName = "/home/mkyong/test";

        File file = new File(fileName);

        System.out.println("Before Format : " + file.lastModified());

        SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");

        System.out.println("After Format : " + sdf.format(file.lastModified()));

    }

}

Выход

Before Format : 1595237394627
After Format : 07/20/2020 17:29:54

Скачать Исходный Код

$клон git $клон git

$cd java-ввод-вывод

Рекомендации

Оригинал: “https://mkyong.com/java/how-to-get-the-file-last-modified-date-in-java/”