Класс FileDescriptor
java.lang.Object
java.io.FileDescriptor
public final class FileDescriptor extends Object
Экземпляры класса дескриптор файла служат неким невидимым инструментом для работы с машинозависимыми структурами, представляющими открытый файл, открытый сокет или другой источник или приемник байтов. Основное практическое применение дескриптора файла — создание
FileInputStream или FileOutputStream для его обработки. Приложения не должны создавать свои собственные дескрипторы файлов.
- Since:
- 1.0
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final FileDescriptor |
err |
Дескриптор стандартного потока ошибок. |
static final FileDescriptor |
in |
Дескриптор стандартного потока ввода. |
static final FileDescriptor |
out |
Дескриптор стандартного потока вывода. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
FileDescriptor() |
Создаёт объект FileDescriptor (недействительный). |
Краткое описание методов
Подробное описание полей
in
public static final FileDescriptor in
Дескриптор стандартного потока ввода. Обычно этот дескриптор файла используется не напрямую, а через поток ввода, известный как
System.in.- See Also:
out
public static final FileDescriptor out
Дескриптор стандартного потока вывода. Обычно этот дескриптор файла используется не напрямую, а через поток вывода, известный как
System.out.- See Also:
err
public static final FileDescriptor err
Дескриптор стандартного потока ошибок. Обычно этот дескриптор файла используется не напрямую, а через поток вывода, известный как
System.err.- See Also:
Подробное описание конструкторов
FileDescriptor
public FileDescriptor()
Создаёт объект FileDescriptor (недействительный). Дескриптор или указатель устанавливаются позже.
Подробное описание методов
valid
public boolean valid()
Проверяет, является ли этот объект дескриптора файла валидным.
- Returns:
-
trueесли объект дескриптора файла представляет собой действительный, открытый файл, сокет или другое активное подключение ввода-вывода;falseв противном случае.
sync
public void sync() throws SyncFailedException
Принудительная синхронизация всех системных буферов с базовым устройством. Этот метод возвращает результат, когда все изменённые данные и атрибуты этого FileDescriptor были записаны в соответствующее устройство(я). В частности, если этот FileDescriptor относится к физическому хранилищу, например, к файлу в файловой системе, sync не вернётся, пока все изменённые копии буферов, связанные с этим FileDescriptor, не будут записаны на физическое устройство. sync предназначен для использования кодом, который требует, чтобы физическое хранилище (например, файл) находилось в известном состоянии. Например, класс, предоставляющий простую функциональность транзакций, может использовать sync для обеспечения того, чтобы все изменения в файле, вызванные данной транзакцией, были записаны на хранилище. sync затрагивает только буферы ниже по потоку этого FileDescriptor. Если приложение выполняет буферизацию в памяти (например, объект BufferedOutputStream), эти буферы должны быть сброшены в FileDescriptor (например, вызовом OutputStream.flush), прежде чем эти данные будут затронуты sync.
- Throws:
-
SyncFailedException- Выбрасывается, когда буферы не могут быть сброшены или система не может гарантировать, что все буферы были синхронизированы с физическими носителями. - Since:
- 1.1
© 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/io/FileDescriptor.html