Класс FileStore
- java.lang.Object
- java.nio.file.FileStore
public abstract class FileStore extends Object
Хранилище для файлов. Объект FileStore представляет собой пул хранения, устройство, раздел, том, конкретную файловую систему или другой механизм хранения файлов, специфичный для реализации. Место хранения файла определяется вызовом метода getFileStore, или все хранилища файлов можно перечислить, вызвав метод getFileStores.
Помимо методов, определённых в этом классе, хранилище файлов может поддерживать один или несколько классов FileStoreAttributeView, предоставляющих чтение только для чтения или обновляемый вид на набор атрибутов хранилища файлов.
- Since:
- 1.7
Конструкторы
| Модификатор | Конструктор | Описание |
|---|---|---|
protected | FileStore() | Инициализирует новый экземпляр этого класса. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract Object | getAttribute(String attribute) | Считывает значение атрибута хранилища файлов. |
long | getBlockSize() | Возвращает количество байт на блок в этом хранилище файлов. |
abstract <V extends FileStoreAttributeView> | getFileStoreAttributeView(Class<V> type) | Возвращает |
abstract long | getTotalSpace() | Возвращает размер хранилища файлов в байтах. |
abstract long | getUnallocatedSpace() | Возвращает количество неиспользуемых байтов в хранилище файлов. |
abstract long | getUsableSpace() | Возвращает количество байтов, доступных этой виртуальной машине Java в хранилище файлов. |
abstract boolean | isReadOnly() | Указывает, является ли это хранилище файлов только для чтения. |
abstract String | name() | Возвращает имя этого хранилища файлов. |
abstract boolean | supportsFileAttributeView(Class<? extends FileAttributeView> type) | Указывает, поддерживает ли это хранилище файлов атрибуты файлов, определённые заданным представлением атрибутов файлов. |
abstract boolean | supportsFileAttributeView(String name) | Указывает, поддерживает ли это хранилище файлов атрибуты файлов, определённые заданным представлением атрибутов файлов. |
abstract String | type() | Возвращает тип этого хранилища файлов. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitКонструкторы
FileStore
protected FileStore()
Инициализирует новый экземпляр этого класса.
Методы
name
public abstract String name()
Возвращает имя этого хранилища файлов. Формат имени сильно зависит от реализации. Обычно это имя пула хранилища или тома.
Строка, возвращаемая этим методом, может отличаться от строки, возвращаемой методом toString.
- Возвращает:
- имя этого хранилища файлов
type
public abstract String type()
Возвращает тип этого хранилища файлов. Формат строки, возвращаемой этим методом, сильно зависит от реализации. Например, он может указывать используемый формат или является ли хранилище локальным или удалённым.
- Возвращает:
- строка, представляющая тип этого хранилища файлов
isReadOnly
public abstract boolean isReadOnly()
Указывает, является ли это хранилище файлов только для чтения. Хранилище файлов является только для чтения, если оно не поддерживает операции записи или другие изменения файлов. Любая попытка создать файл, открыть существующий файл для записи и т. д. вызывает исключение IOException.
- Возвращает:
-
trueесли и только если это хранилище файлов только для чтения
getTotalSpace
public abstract long getTotalSpace()
throws IOException Возвращает размер хранилища файлов в байтах.
- Возвращает:
- размер хранилища файлов в байтах
- Исключения:
-
IOException- если произошла ошибка ввода-вывода
getUsableSpace
public abstract long getUsableSpace()
throws IOException Возвращает количество байтов, доступных этой виртуальной машине Java в хранилище файлов.
Возвращаемое количество доступных байтов является подсказкой, но не гарантией, что можно использовать большинство или какие-либо из этих байтов. Количество доступных байтов, скорее всего, будет точным сразу после получения атрибутов пространства. Вероятнее всего, оно станет неточным после любых внешних операций ввода-вывода, включая те, которые выполняются на системе за пределами этой виртуальной машины Java.
- Возвращает:
- количество доступных байтов
- Исключения:
-
IOException- если произошла ошибка ввода-вывода
getBlockSize
public long getBlockSize()
throws IOException Возвращает количество байт на блок в этом хранилище файлов.
Хранилище файлов обычно организовано в дискретные последовательности байтов, называемые блоками. Блок — это наименьшая единица хранения в хранилище файлов. Каждая операция чтения и записи выполняется на кратном количестве блоков.
- Требования к реализации:
- Реализация в этом классе выбрасывает
UnsupportedOperationException. - Возвращает:
- положительное значение, представляющее размер блока этого хранилища файлов в байтах
- Исключения:
-
IOException- если произошла ошибка ввода-вывода -
UnsupportedOperationException- если операция не поддерживается - Since:
- 10
getUnallocatedSpace
public abstract long getUnallocatedSpace()
throws IOException Возвращает количество неиспользуемых байтов в хранилище файлов.
Возвращаемое количество неиспользуемых байтов является подсказкой, но не гарантией, что можно использовать большинство или какие-либо из этих байтов. Количество неиспользуемых байтов, скорее всего, будет точным сразу после получения атрибутов пространства. Вероятнее всего, оно станет неточным после любых внешних операций ввода-вывода, включая те, которые выполняются на системе за пределами этой виртуальной машины.
- Возвращает:
- количество неиспользуемых байтов
- Исключения:
-
IOException- если произошла ошибка ввода-вывода
supportsFileAttributeView
public abstract boolean supportsFileAttributeView(Class<? extends FileAttributeView> type)
Указывает, поддерживает ли это хранилище файлов атрибуты файлов, определённые заданным представлением атрибутов файлов.
Вызов этого метода для проверки поддержки BasicFileAttributeView всегда вернёт true. В случае с поставщиком по умолчанию этот метод не может гарантировать корректный результат, когда хранилище файлов не является локальным устройством хранения. Причины этому — специфичны для реализации и, следовательно, не определены.
- Параметры:
-
type- тип представления атрибутов файла - Возвращает:
-
trueесли и только если представление атрибутов файла поддерживается
supportsFileAttributeView
public abstract boolean supportsFileAttributeView(String name)
Указывает, поддерживает ли это хранилище файлов атрибуты файлов, определённые заданным представлением атрибутов файлов.
Вызов этого метода для проверки поддержки BasicFileAttributeView, идентифицируемой именем "basic", всегда вернёт true. В случае с поставщиком по умолчанию этот метод не может гарантировать корректный результат, когда хранилище файлов не является локальным устройством хранения. Причины этому — специфичны для реализации и, следовательно, не определены.
- Параметры:
-
name-nameпредставления атрибутов файла - Возвращает:
-
trueесли и только если представление атрибутов файла поддерживается
getFileStoreAttributeView
public abstract <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> type)
Возвращает FileStoreAttributeView заданного типа.
Этот метод предназначен для использования в тех случаях, когда представление атрибутов хранилища файлов определяет методы с безопасностью типов для чтения или обновления атрибутов хранилища файлов. Параметр type — это тип требуемого представления атрибутов, и метод возвращает экземпляр этого типа, если он поддерживается.
- Тип параметров:
-
V- ТипFileStoreAttributeView - Параметры:
-
type- объектClassсоответствующий представлению атрибутов - Возвращает:
- представление атрибутов хранилища файлов заданного типа или
nullесли представление атрибутов недоступно
getAttribute
public abstract Object getAttribute(String attribute)
throws IOException Считывает значение атрибута хранилища файлов.
Параметр attribute идентифицирует атрибут для чтения и имеет вид:
view-name:attribute-nameгде символ
':' стоит сам за себя. view-name — это name AttributeView, который определяет набор атрибутов файлов. attribute-name — имя атрибута.
Пример использования: Предположим, что мы хотим узнать, включен ли ZFS сжатие (предполагая, что представление "zfs" поддерживается):
boolean compression = (Boolean)fs.getAttribute("zfs:compression");
- Параметры:
-
attribute- атрибут для чтения - Возвращает:
- значение атрибута;
nullможет быть допустимо для некоторых атрибутов - Исключения:
-
UnsupportedOperationException- если представление атрибутов недоступно или оно не поддерживает чтение атрибута -
IOException- если произошла ошибка ввода-вывода
© 1993, 2020, 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/11/docs/api/java.base/java/nio/file/FileStore.html