Пакет java.nio.file
Пакет java.nio.file определяет классы для доступа к файлам и файловым системам. API для доступа к атрибутам файлов и файловых систем определен в пакете java.nio.file.attribute. Пакет java.nio.file.spi используется реализаторами поставщиков услуг, желающими расширить стандартный поставщик платформы или создать другие реализации поставщиков.
Символические ссылки
Многие операционные системы и файловые системы поддерживают символические ссылки. Символическая ссылка — это специальный файл, который служит ссылкой на другой файл. В большинстве случаев символические ссылки прозрачны для приложений, и операции с символическими ссылками автоматически перенаправляются на цель ссылки. Исключением являются случаи удаления или переименования/перемещения символической ссылки, в этом случае ссылка удаляется или удаляется, а не цель ссылки. В этом пакете поддерживаются символические ссылки, где реализации предоставляют эти семантики. Файловые системы могут поддерживать другие типы, которые семантически близки, но поддержка других типов ссылок не включена в этот пакет.
Взаимодействие
Класс File определяет метод toPath для построения Path путем преобразования абстрактного пути, представленного объектом java.io.File. Результирующий Path может использоваться для работы с тем же файлом, что и объект File. Спецификация Path предоставляет дополнительную информацию о взаимодействии между Path и java.io.File объектами.
Видимость
Вид файлов и файловой системы, предоставляемый классами в этом пакете, гарантированно согласован с другими представлениями, предоставляемыми другими экземплярами в той же виртуальной машине Java. Однако представление может или не может быть согласованным с представлением файловой системы, как её видят другие одновременно выполняющиеся программы, из-за кэширования, выполняемого базовой операционной системой, и задержек, вызванных протоколами сетевых файловых систем. Это верно независимо от языка, на котором написаны эти другие программы, и от того, работают ли они на одном компьютере или на другом. Точный характер таких несоответствий зависит от системы и поэтому не определен.
Целостность синхронизированного ввода-вывода файлов
Опции SYNC и DSYNC используются при открытии файла для того, чтобы требовать, чтобы обновления файла были синхронно записаны на базовое устройство хранения. В случае стандартного поставщика и если файл находится на локальном устройстве хранения, и канал seekable подключен к файлу, открытому с одной из этих опций, тогда вызов метода write гарантированно вернется только тогда, когда все изменения, внесенные в файл этим вызовом, были записаны на устройство. Эти опции полезны для обеспечения того, что критическая информация не потеряется в случае сбоя системы. Если файл не находится на локальном устройстве, такая гарантия не предоставляется. Возможно ли эта гарантия с другими реализациями provider, зависит от поставщика.
Общие исключения
Если не указано иное, передача null аргумента в конструктор или метод любого класса или интерфейса в этом пакете вызовет исключение NullPointerException. Кроме того, вызов метода с массивом или коллекцией, содержащей элемент null, вызовет NullPointerException, если не указано иное.
Если не указано иное, методы, которые пытаются получить доступ к файловой системе, будут выбрасывать ClosedFileSystemException, когда они вызываются на объектах, связанных с FileSystem, который был закрыт с помощью closed. Кроме того, любые методы, которые пытаются получить доступ к файловой системе, будут выбрасывать ReadOnlyFileSystemException при вызове на объекте, связанном с FileSystem, который предоставляет только чтение.
Если не указано иное, вызов метода любого класса или интерфейса в этом пакете, созданного одним provider, с параметром, который является объектом, созданным другим поставщиком, вызовет ProviderMismatchException.
Дополнительные специфические исключения
Большинство методов, определенных классами в этом пакете и обращающимися к файловой системе, указывают, чтоIOException будет выброшен, когда произойдет ошибка ввода-вывода. В некоторых случаях эти методы определяют специфические исключения ввода-вывода для распространенных случаев. Эти исключения, отмеченные как дополнительные специфические исключения, выбрасываются реализацией, где она может обнаружить конкретную ошибку. Если конкретная ошибка не может быть обнаружена, выбрасывается более общее
IOException. - Since:
- 1.7
| Класс | Описание |
|---|---|
| AccessDeniedException | Исключение, выбрасываемое при отказе в доступе к файловой системе, обычно из-за прав доступа к файлу или другим проверкам доступа. |
| AccessMode | Определяет режимы доступа, используемые для проверки доступности файла. |
| AtomicMoveNotSupportedException | Исключение, выбрасываемое, когда файл не может быть перемещен как атомарная операция файловой системы. |
| ClosedDirectoryStreamException | Исключение, выбрасываемое, когда попытка вызвать операцию на потоке каталога, который закрыт. |
| ClosedFileSystemException | Исключение, выбрасываемое, когда попытка вызвать операцию на файле, и файловая система закрыта. |
| ClosedWatchServiceException | Исключение, выбрасываемое, когда попытка вызвать операцию на службе наблюдения, которая закрыта. |
| CopyOption | Объект, настраивающий способ копирования или перемещения файла. |
| DirectoryIteratorException | Исключение выполнения, выбрасываемое, если при итерации по записям в каталоге возникает ошибка ввода-вывода. |
| DirectoryNotEmptyException | Исключение, выбрасываемое, когда операция файловой системы завершается неудачно, так как каталог не пуст. |
| DirectoryStream<T> | Объект для итерации по записям в каталоге. |
| DirectoryStream.Filter<T> | Интерфейс, реализуемый объектами, которые определяют, должна ли запись каталога приниматься или отфильтровываться. |
| FileAlreadyExistsException | Исключение, выбрасываемое, когда попытка создать файл или каталог, и файл с таким именем уже существует. |
| Files | Этот класс состоит исключительно из статических методов, которые работают с файлами, каталогами или другими типами файлов. |
| FileStore | Хранилище для файлов. |
| FileSystem | Предоставляет интерфейс к файловой системе и является фабрикой для объектов доступа к файлам и другим объектам в файловой системе. |
| FileSystemAlreadyExistsException | Исключение выполнения, выбрасываемое, когда попытка создать файловую систему, которая уже существует. |
| FileSystemException | Выбрасывается, когда операция файловой системы завершается неудачно с одним или двумя файлами. |
| FileSystemLoopException | Исключение, выбрасываемое, когда обнаружен цикл файловой системы или цикл. |
| FileSystemNotFoundException | Исключение выполнения, выбрасываемое, когда файловая система не может быть найдена. |
| FileSystems | Методы-фабрики для файловых систем. |
| FileVisitOption | Определяет параметры обхода дерева файлов. |
| FileVisitor<T> | Посетитель файлов. |
| FileVisitResult | Тип результата FileVisitor. |
| InvalidPathException | Исключение выполнения, выбрасываемое, когда строка пути не может быть преобразована в Path, так как строка пути содержит недопустимые символы или строка пути недопустима для других причин, специфичных для файловой системы. |
| LinkOption | Определяет параметры обработки символических ссылок. |
| LinkPermission | Класс Permission для операций создания ссылок. |
| NoSuchFileException | Исключение, выбрасываемое, когда попытка доступа к файлу, который не существует. |
| NotDirectoryException | Исключение, выбрасываемое, когда операция файловой системы, предназначенная для каталога, завершается неудачно, так как файл не является каталогом. |
| NotLinkException | Исключение, выбрасываемое, когда операция файловой системы завершается неудачно, так как файл не является символической ссылкой. |
| OpenOption | Объект, настраивающий способ открытия или создания файла. |
| Path | Объект, который может использоваться для поиска файла в файловой системе. |
| PathMatcher | Интерфейс, реализуемый объектами, выполняющими операции сопоставления путей. |
| Paths | |
| ProviderMismatchException | Исключение выполнения, выбрасываемое, когда попытка вызвать метод на объекте, созданном одним поставщиком файловой системы, с параметром, созданным другим поставщиком файловой системы. |
| ProviderNotFoundException | Исключение выполнения, выбрасываемое, когда поставщик требуемого типа не найден. |
| ReadOnlyFileSystemException | Исключение выполнения, выбрасываемое, когда попытка обновить объект, связанный с read-only FileSystem. |
| SecureDirectoryStream<T> | DirectoryStream для определения операций над файлами, расположенными относительно открытого каталога. |
| SimpleFileVisitor<T> | Простой посетитель файлов с поведением по умолчанию для посещения всех файлов и повторного выброса ошибок ввода-вывода. |
| StandardCopyOption | Определяет стандартные параметры копирования. |
| StandardOpenOption | Определяет стандартные параметры открытия. |
| StandardWatchEventKinds | Определяет стандартные типы событий. |
| Watchable | Объект, который может быть зарегистрирован в службе наблюдения, чтобы можно было наблюдать за изменениями и событиями. |
| WatchEvent<T> | Событие или повторяющееся событие для объекта, зарегистрированного в WatchService. |
| WatchEvent.Kind<T> | Тип события для целей идентификации. |
| WatchEvent.Modifier | Модификатор события, который определяет, как Watchable регистрируется в WatchService. |
| WatchKey | Токен, представляющий регистрацию объекта watchable в WatchService. |
| WatchService | Служба наблюдения, наблюдающая за зарегистрированными объектами для изменений и событий. |
© 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/package-summary.html