Spec-Zone.ru › OpenJDK 24

Интерфейс 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 - если произошла ошибка ввода-вывода

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 - если произошла ошибка ввода-вывода
См. также:
  • Files.setLastModifiedTime(java.nio.file.Path, java.nio.file.attribute.FileTime)

Сообщить об ошибке или предложить улучшение
Для получения дополнительной информации по API и документации для разработчиков см. Документацию Java SE, которая содержит более подробные описания для разработчиков с концептуальными обзорами, определениями терминов, решениями и примерами рабочего кода. Другие версии.
Java является торговой маркой или зарегистрированной торговой маркой Oracle и/или её аффилированных компаний в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные компании, 500 Oracle Parkway, Redwood Shores, CA 94065 США.
Все права защищены. Использование подлежит лицензионным условиям и политике перераспределения документации.
DRAFT 24-ea+36-Debian-1

© 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/nio/file/attribute/BasicFileAttributeView.html

Spec-Zone.ru

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