Spec-Zone.ru › OpenJDK 17

Интерфейс 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(FileTime lastModifiedTime, FileTime lastAccessTime, FileTime createTime)
Обновляет любое или все время последнего изменения файла, время последнего доступа и время создания.

Подробное описание методов

name

String name()
Возвращает имя представления атрибутов. Представления атрибутов этого типа имеют имя "basic".
Задано:
name в интерфейсе AttributeView
Возвращает:
имя представления атрибутов

readAttributes

BasicFileAttributes readAttributes() throws IOException
Считывает основные атрибуты файла как оптовую операцию.

Реализация определяет, считаются ли все атрибуты файла атомарной операцией по отношению к другим операциям с файловой системой.

Возвращает:
атрибуты файла
Бросает:
IOException - если произошла ошибка ввода-вывода
SecurityException - В случае с поставщиком по умолчанию, если установлен менеджер безопасности, вызывается его метод checkRead для проверки доступа на чтение к файлу

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 - если произошла ошибка ввода-вывода
SecurityException - В случае с поставщиком по умолчанию, если установлен менеджер безопасности, вызывается его метод checkWrite для проверки доступа на запись к файлу
См. также:
  • Files.setLastModifiedTime(java.nio.file.Path, java.nio.file.attribute.FileTime)

© 1993, 2021, 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/17/docs/api/java.base/java/nio/file/attribute/BasicFileAttributeView.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API