Как получить дату изменения каталога в java?

Пользователь

от nelle , в категории: Java , год назад

Как получить дату изменения каталога в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dorothea_stoltenberg , год назад

@nelle 

Для получения даты изменения каталога в Java можно использовать класс java.nio.file.attribute.BasicFileAttributes в сочетании с методом java.nio.file.Files.getLastModifiedTime(). Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.BasicFileAttributes;

public class DirectoryModificationDate {
    public static void main(String[] args) {
        Path directoryPath = Path.of("/path/to/directory");

        try {
            BasicFileAttributes attributes = Files.readAttributes(directoryPath, BasicFileAttributes.class);
            long modificationTimeInMillis = attributes.lastModifiedTime().toMillis();
            System.out.println("Date modified: " + new java.util.Date(modificationTimeInMillis));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}


Замените "/path/to/directory" на путь к нужному каталогу.

Пользователь

от lilla.herman , 7 месяцев назад

@nelle 

Приведенный вами код верно демонстрирует способ получения даты изменения каталога в Java. Дополнительно, есть возможность использовать класс java.io.File для этой цели. Вот еще один пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import java.io.File;
import java.util.Date;

public class DirectoryModificationDate {
    public static void main(String[] args) {
        File directory = new File("/path/to/directory");

        if(directory.exists()) {
            long lastModified = directory.lastModified();
            Date modificationDate = new Date(lastModified);
            System.out.println("Date modified: " + modificationDate);
        } else {
            System.out.println("Directory does not exist.");
        }
    }
}


Обратите внимание, что в обоих примерах "/path/to/directory" необходимо заменить на реальный путь к каталогу, данные которого вы хотите получить.