На этом шаге мы рассмотрим функции класса Files для работы с атрибутами
В классе Files также есть функции для получения информации об атрибутах файлов или директорий. Поговорим про каждую из них:
Приведем ниже пример программы, использующую рассмотренные выше функции.
import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.text.SimpleDateFormat; import java.util.Date; public class Main { public static void main(String[] args) throws IOException { Path file = Paths.get("tmp.txt"); /*Проверяем, что файл tmp.txt существует*/ if (!Files.exists(file)) { /*Если его не существует, то скажем про это*/ System.out.println("Файла " + file.toString() + " не существует"); return; } /*Если файл существует, то выводим информацию о файле*/ System.out.println("Владелец файла: " + Files.getOwner(file)); System.out.println("Размер файла (в байтах): " + Files.size(file)); SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy, HH:mm:ss"); Date lastModifiedDate = new Date(Files.getLastModifiedTime(file).toMillis()); System.out.println("Дата последнего изменения: " + dateFormat.format(lastModifiedDate)); System.out.println("Разрешено читать из файла: " + Files.isReadable(file)); System.out.println("Разрешено писать в файл: " + Files.isWritable(file)); System.out.println("Разрешено запускать файл: " + Files.isExecutable(file)); } }
Проект можно взять здесь
Рис. 1. Вывод программы
На следующем шаге мы продолжим изучение класса Files