Интерфейс BasicFileAttributeView
- Все суперинтерфейсы:
AttributeView, FileAttributeView
- Все известные подинтерфейсы:
DosFileAttributeView, PosixFileAttributeView
public interface BasicFileAttributeView extends FileAttributeView
BasicFileAttributes. Атрибуты файла извлекаются из файловой системы как массовая операция путём вызова метода readAttributes. Этот класс также определяет метод setTimes для обновления временных атрибутов файла.
Если требуется динамический доступ к атрибутам файла, атрибуты, поддерживаемые этим представлением, имеют следующие имена и типы:
Имя Тип "lastModifiedTime" FileTime"lastAccessTime" FileTime"creationTime" FileTime"size" Long"isRegularFile" Boolean"isDirectory" Boolean"isSymbolicLink" Boolean"isOther" Boolean"fileKey" Object
Метод getAttribute можно использовать для чтения любого из этих атрибутов так, как если бы был вызван метод readAttributes().
Метод setAttribute можно использовать для обновления атрибута времени последнего изменения, времени последнего доступа или времени создания файла так, как если бы был вызван метод setTimes.
- Начиная с:
- 1.7
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
String |
name() |
Возвращает имя представления атрибутов. |
BasicFileAttributes |
readAttributes() |
Считывает базовые атрибуты файла как массовую операцию. |
void |
setTimes |
Обновляет любые или все атрибуты файла: время последнего изменения, время последнего доступа и время создания. |
Подробное описание методов
name
String name()
"basic".- Определено в:
-
nameв интерфейсеAttributeView - Возвращает:
- имя представления атрибутов
readAttributes
BasicFileAttributes readAttributes() throws IOException
Реализация определяет, считываются ли все атрибуты файла как атомарная операция относительно других операций файловой системы.
- Возвращает:
- атрибуты файла
- Выбрасывает:
-
IOException— если произошла ошибка ввода-вывода
setTimes
void setTimes(FileTime lastModifiedTime, FileTime lastAccessTime, FileTime createTime) throws IOException
Этот метод обновляет атрибуты временных меток файла. Значения преобразуются к началу эпохи и точности, поддерживаемым файловой системой. Преобразование от более высокой точности к более низкой приводит к потере точности. Поведение этого метода при попытке задать неподдерживаемую временную метку или значение, выходящее за пределы диапазона, поддерживаемого базовым хранилищем файлов, не определено. Вызов может завершиться ошибкой с выбрасыванием IOException.
Если один из параметров lastModifiedTime, lastAccessTime или createTime имеет значение null, соответствующая временная метка не изменяется. Реализация может потребовать считывания текущих значений атрибутов файла, если обновляются только некоторые, но не все атрибуты временных меток. Поэтому этот метод может не быть атомарной операцией относительно других операций файловой системы. Считывание и повторная запись существующих значений также могут привести к потере точности. Если все параметры lastModifiedTime,
lastAccessTime и createTime имеют значение null, этот метод не оказывает никакого действия.
Пример использования: Предположим, что мы хотим изменить время последнего доступа к файлу.
Path path = ...
FileTime time = ...
Files.getFileAttributeView(path, BasicFileAttributeView.class).setTimes(null, time, null);
- Параметры:
-
lastModifiedTime— новое время последнего изменения илиnull, если значение не нужно изменять -
lastAccessTime— время последнего доступа илиnull, если значение не нужно изменять -
createTime— время создания файла илиnull, если значение не нужно изменять - Выбрасывает:
-
IOException— если произошла ошибка ввода-вывода - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/file/attribute/BasicFileAttributeView.html