Пакет 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 | Класс для операций создания ссылок. |
| NoSuchFileException | Исключение, выбрасываемое при попытке доступа к файлу, которого не существует. |
| NotDirectoryException | Исключение, выбрасываемое при неудаче операции файловой системы, предназначенной для каталога, потому что файл не является каталогом. |
| NotLinkException | Исключение, выбрасываемое, когда операция файловой системы терпит неудачу, потому что файл не является символической ссылкой. |
| OpenOption | Объект, настраивающий способ открытия или создания файла. |
| Path | Объект, который может использоваться для поиска файла в файловой системе. |
| PathMatcher | Интерфейс, реализуемый объектами, выполняющими операции сопоставления с путями. |
| Paths | |
| ProviderMismatchException | Исключение времени выполнения, выбрасываемое при попытке вызвать метод на объекте, созданном одним поставщиком файловой системы, с параметром, созданным другим поставщиком файловой системы. |
| ProviderNotFoundException | Исключение времени выполнения, выбрасываемое, когда поставщик требуемого типа не найден. |
| ReadOnlyFileSystemException | Исключение времени выполнения, выбрасываемое при попытке обновить объект, связанный с read-only FileSystem. |
| SecureDirectoryStream<T> | Интерфейс, определяющий операции над файлами, расположенными относительно открытого каталога. |
| SimpleFileVisitor<T> | Простой посетитель файлов с поведением по умолчанию для посещения всех файлов и повторной генерации ошибок ввода-вывода. |
| StandardCopyOption | Определяет стандартные параметры копирования. |
| StandardOpenOption | Определяет стандартные параметры открытия. |
| StandardWatchEventKinds | Определяет стандартные типы событий. |
| Watchable | Объект, который может быть зарегистрирован в службе наблюдения, чтобы его можно было отслеживать на изменения и события. |
| WatchEvent<T> | Событие или повторяющееся событие для объекта, зарегистрированного в WatchService. |
| WatchEvent.Kind<T> | Тип события, для целей идентификации. |
| WatchEvent.Modifier | Модификатор события, который квалифицирует, как Watchable регистрируется в WatchService. |
| WatchKey | Токен, представляющий регистрацию объекта watchable в WatchService. |
| WatchService | Служба наблюдения, которая отслеживает зарегистрированные объекты на изменения и события. |
© 1993, 2023, 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/21/docs/api/java.base/java/nio/file/package-summary.html