Spec-Zone.ru › OpenJDK 17

Класс FileOutputStream

java.lang.Object
java.io.OutputStream
java.io.FileOutputStream
Все реализованные интерфейсы:
Closeable, Flushable, AutoCloseable
public class FileOutputStream extends OutputStream
Поток вывода для файлов — это поток вывода для записи данных в файл или на устройство. Доступность и создание файла зависит от платформы. Некоторые платформы позволяют открывать файл для записи только одному объекту (или другому объекту записи в файл) за раз. В таких ситуациях конструкторы этого класса будут возвращать ошибку, если файл уже открыт.

Этот класс предназначен для записи потоков байтов, таких как данные изображения. Для записи потоков символов используйте FileWriter.

Примечание API:
Для освобождения ресурсов, используемых этим потоком, необходимо вызвать метод close() напрямую или в блоке try-with-resources. Подклассы отвечают за очистку ресурсов, полученных подклассом. Подклассы, переопределяющие метод Object.finalize() для выполнения очистки, должны быть изменены, чтобы использовать альтернативные механизмы очистки, такие как Cleaner, и удалить переопределенный метод finalize.
Требования к реализации:
Если этот FileOutputStream был расширен и метод close() был переопределён, метод close() будет вызван, когда объект FileInputStream станет недоступным. В противном случае, способ очистки ресурсов, описанный в close(), зависит от реализации.
С:
1.0
См. также:
  • File
  • FileDescriptor
  • FileInputStream
  • Files.newOutputStream(java.nio.file.Path, java.nio.file.OpenOption...)

Краткое описание конструкторов

Конструктор Описание
FileOutputStream(File file)
Создаёт поток вывода для файла, представленного указанным объектом File.
FileOutputStream(FileDescriptor fdObj)
Создаёт поток вывода для указанного дескриптора файла, представляющего существующее подключение к реальному файлу в файловой системе.
FileOutputStream(File file, boolean append)
Создаёт поток вывода для файла, представленного указанным объектом File.
FileOutputStream(String name)
Создаёт поток вывода для файла с указанным именем.
FileOutputStream(String name, boolean append)
Создаёт поток вывода для файла с указанным именем.

Краткое описание методов

Модификатор и тип Метод Описание
void close()
Закрывает этот поток вывода для файла и освобождает все системные ресурсы, связанные с этим потоком.
FileChannel getChannel()
Возвращает уникальный объект FileChannel, связанный с этим потоком вывода для файла.
final FileDescriptor getFD()
Возвращает дескриптор файла, связанный с этим потоком.
void write(byte[] b)
Записывает b.length байтов из указанного массива байтов в этот поток вывода для файла.
void write(byte[] b, int off, int len)
Записывает len байтов из указанного массива байтов, начиная с смещения off, в этот поток вывода для файла.
void write(int b)
Записывает указанный байт в этот поток вывода для файла.

Методы, унаследованные от класса java.io.OutputStream

flush, nullOutputStream

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

FileOutputStream

public FileOutputStream(String name) throws FileNotFoundException
Создаёт поток вывода в файл с указанным именем. Новый объект FileDescriptor создаётся для представления этого подключения к файлу.

В первую очередь, если есть менеджер безопасности, вызывается его метод checkWrite с аргументом name.

Если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине, то выбрасывается FileNotFoundException.

Требования к реализации:
Вызов этого конструктора с параметром name эквивалентен вызову new FileOutputStream(name, false).
Параметры:
name - имя файла, зависящее от системы
Исключения:
FileNotFoundException - если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине
SecurityException - если менеджер безопасности существует и его метод checkWrite запрещает доступ для записи в файл.
См. также:
  • SecurityManager.checkWrite(java.lang.String)

FileOutputStream

public FileOutputStream(String name, boolean append) throws FileNotFoundException
Создаёт поток вывода в файл с указанным именем. Если второй аргумент true, то байты будут записаны в конец файла, а не в начало. Новый объект FileDescriptor создаётся для представления этого подключения к файлу.

В первую очередь, если есть менеджер безопасности, вызывается его метод checkWrite с аргументом name.

Если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине, то выбрасывается FileNotFoundException.

Параметры:
name - имя файла, зависящее от системы
append - если true, то байты будут записаны в конец файла, а не в начало
Исключения:
FileNotFoundException - если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине.
SecurityException - если менеджер безопасности существует и его метод checkWrite запрещает доступ для записи в файл.
С момента:
1.1
См. также:
  • SecurityManager.checkWrite(java.lang.String)

FileOutputStream

public FileOutputStream(File file) throws FileNotFoundException
Создаёт поток вывода в файл, представленный указанным объектом File. Новый объект FileDescriptor создаётся для представления этого подключения к файлу.

В первую очередь, если есть менеджер безопасности, вызывается его метод checkWrite с путём, представленным аргументом file, в качестве аргумента.

Если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине, то выбрасывается FileNotFoundException.

Параметры:
file - файл, который необходимо открыть для записи.
Исключения:
FileNotFoundException - если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине
SecurityException - если менеджер безопасности существует и его метод checkWrite запрещает доступ для записи в файл.
См. также:
  • File.getPath()
  • SecurityException
  • SecurityManager.checkWrite(java.lang.String)

FileOutputStream

public FileOutputStream(File file, boolean append) throws FileNotFoundException
Создаёт поток вывода в файл, представленный указанным объектом File. Если второй аргумент true, то байты будут записаны в конец файла, а не в начало. Новый объект FileDescriptor создаётся для представления этого подключения к файлу.

В первую очередь, если есть менеджер безопасности, вызывается его метод checkWrite с путём, представленным аргументом file, в качестве аргумента.

Если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине, то выбрасывается FileNotFoundException.

Параметры:
file - файл, который необходимо открыть для записи.
append - если true, то байты будут записаны в конец файла, а не в начало
Исключения:
FileNotFoundException - если файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине
SecurityException - если менеджер безопасности существует и его метод checkWrite запрещает доступ для записи в файл.
С момента:
1.4
См. также:
  • File.getPath()
  • SecurityException
  • SecurityManager.checkWrite(java.lang.String)

FileOutputStream

public FileOutputStream(FileDescriptor fdObj)
Создаёт поток вывода в указанный дескриптор файла, который представляет собой существующее подключение к фактическому файлу в файловой системе.

В первую очередь, если есть менеджер безопасности, вызывается его метод checkWrite с аргументом дескриптора файла fdObj.

Если fdObj равно null, то выбрасывается NullPointerException.

Этот конструктор не выбрасывает исключение, если fdObj равен invalid. Однако, если методы вызываются на результирующем потоке для попытки ввода-вывода по потоку, то выбрасывается IOException.

Параметры:
fdObj - дескриптор файла, который нужно открыть для записи
Исключения:
SecurityException - если менеджер безопасности существует и его метод checkWrite запрещает доступ для записи к дескриптору файла
См. также:
  • SecurityManager.checkWrite(java.io.FileDescriptor)

Подробное описание методов

write

public void write(int b) throws IOException
Записывает указанный байт в этот поток вывода в файл. Реализует метод write класса OutputStream.
Определено в:
write в классе OutputStream
Параметры:
b - байт, который нужно записать.
Исключения:
IOException - если произошла ошибка ввода-вывода.

write

public void write(byte[] b) throws IOException
Записывает b.length байтов из указанного массива байтов в этот поток вывода в файл.
Переопределяет:
write в классе OutputStream
Параметры:
b - данные.
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
  • OutputStream.write(byte[], int, int)

write

public void write(byte[] b, int off, int len) throws IOException
Записывает len байтов из указанного массива байтов, начиная с смещения off, в этот поток вывода в файл.
Переопределяет:
write в классе OutputStream
Параметры:
b - данные.
off - начальное смещение в данных.
len - количество байтов для записи.
Исключения:
IOException - если произошла ошибка ввода-вывода.

close

public void close() throws IOException
Закрывает этот поток вывода в файл и высвобождает все системные ресурсы, связанные с этим потоком. Этот поток вывода в файл больше не может использоваться для записи байтов.

Если у этого потока есть связанный канал, то канал также закрывается.

Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Переопределяет:
close в классе OutputStream
Примечание API:
Переопределение close() для выполнения действий по очистке надёжно только при вызове непосредственно или при вызове с помощью try-with-resources. Не полагайтесь на финализацию для вызова close; финализация ненадёжна и устарела. Если нужна очистка нативных ресурсов, следует использовать другие механизмы, такие как Cleaner.
Исключения:
IOException - если произошла ошибка ввода-вывода.

getFD

public final FileDescriptor getFD() throws IOException
Возвращает дескриптор файла, связанный с этим потоком.
Возвращает:
объект FileDescriptor, представляющий подключение к файлу в файловой системе, используемое этим объектом FileOutputStream.
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
  • FileDescriptor

getChannel

public FileChannel getChannel()
Возвращает уникальный объект FileChannel, связанный с этим потоком вывода файла.

Начальное значение position возвращённого канала будет равно количеству байтов, записанных в файл до сих пор, если этот поток не в режиме добавления, в этом случае оно будет равно размеру файла. Запись байтов в этот поток соответственно увеличит позицию канала. Изменение позиции канала, явно или посредством записи, изменит позицию файла этого потока.

Возвращает:
канал файла, связанный с этим потоком вывода файла
С:
1.4

© 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/FileOutputStream.html

Spec-Zone.ru

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