Класс DataOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.io.DataOutputStream
- Все реализуемые интерфейсы:
-
Closeable,DataOutput,Flushable,AutoCloseable
public class DataOutputStream extends FilterOutputStream implements DataOutput
Поток данных для вывода позволяет приложению записывать примитивные типы данных Java в поток вывода портативным способом. Затем приложение может использовать поток данных для ввода для повторного считывания данных.
- С момента:
- 1.0
- См. также:
DataInputStream
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected int | written | Количество байтов, записанных в поток данных до сих пор. |
Поля, объявленные в классе java.io.FilterOutputStream
out Конструкторы
| Конструктор | Описание |
|---|---|
DataOutputStream(OutputStream out) | Создает новый поток данных для вывода данных в указанный поток вывода. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | flush() | Очищает этот поток данных для вывода. |
int | size() | Возвращает текущее значение счетчика |
void | write(byte[] b,
int off,
int len) | Записывает |
void | write(int b) | Записывает указанный байт (нижние восемь бит аргумента |
void | writeBoolean(boolean v) | Записывает |
void | writeByte(int v) | Записывает |
void | writeBytes(String s) | Записывает строку в поток вывода как последовательность байтов. |
void | writeChar(int v) | Записывает |
void | writeChars(String s) | Записывает строку в поток вывода как последовательность символов. |
void | writeDouble(double v) | Преобразует аргумент double в |
void | writeFloat(float v) | Преобразует аргумент float в |
void | writeInt(int v) | Записывает |
void | writeLong(long v) | Записывает |
void | writeShort(int v) | Записывает |
void | writeUTF(String str) | Записывает строку в поток вывода, используя кодировку измененный UTF-8 для машинонезависимого способа. |
Методы, объявленные в классе java.io.FilterOutputStream
close, write Методы, объявленные в классе java.io.OutputStream
nullOutputStream Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Методы, объявленные в интерфейсе java.io.DataOutput
write Поля
written
protected int written
Количество байтов, записанных в поток данных до сих пор. Если этот счетчик переполнится, он будет перейти к Integer.MAX_VALUE.
Конструкторы
DataOutputStream
public DataOutputStream(OutputStream out)
Создает новый поток данных для вывода данных в указанный поток вывода. Счетчик written установлен в ноль.
- Параметры:
-
out- базовый поток вывода, сохраняемый для последующего использования. - См. также:
FilterOutputStream.out
Методы
write
public void write(int b)
throws IOException Записывает указанный байт (восемь младших битов аргумента b) в базовый выходной поток. Если исключение не выбрасывается, счетчик written увеличивается на 1.
Реализует метод write класса OutputStream.
- Указано в:
-
writeв интерфейсеDataOutput - Переопределяет:
-
writeв классеFilterOutputStream - Параметры:
-
b- записываемыйbyte. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
write
public void write(byte[] b,
int off,
int len)
throws IOException Записывает len байтов из указанного массива байтов, начиная со смещения off, в базовый выходной поток. Если исключение не выбрасывается, счетчик written увеличивается на len.
- Указано в:
-
writeв интерфейсеDataOutput - Переопределяет:
-
writeв классеFilterOutputStream - Параметры:
-
b- данные. -
off- начальное смещение в данных. -
len- количество байтов для записи. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
flush
public void flush()
throws IOException Сбрасывает буфер этого потока данных. Это приводит к записи всех буферизованных выходных байтов в поток.
Метод flush класса DataOutputStream вызывает метод flush базового выходного потока.
- Указано в:
-
flushв интерфейсеFlushable - Переопределяет:
-
flushв классеFilterOutputStream - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
-
FilterOutputStream.out,OutputStream.flush()
writeBoolean
public final void writeBoolean(boolean v)
throws IOException Записывает boolean в базовый выходной поток как 1-байтовое значение. Значение true записывается как значение (byte)1; значение false записывается как значение (byte)0. Если исключение не выбрасывается, счетчик written увеличивается на 1.
- Указано в:
-
writeBooleanв интерфейсеDataOutput - Параметры:
-
v- записываемое значениеboolean. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeByte
public final void writeByte(int v)
throws IOException Записывает byte в базовый выходной поток как 1-байтовое значение. Если исключение не выбрасывается, счетчик written увеличивается на 1.
- Указано в:
-
writeByteв интерфейсеDataOutput - Параметры:
-
v- записываемое значениеbyte. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeShort
public final void writeShort(int v)
throws IOException Записывает short в базовый выходной поток как два байта, старший байт первым. Если исключение не выбрасывается, счетчик written увеличивается на 2.
- Указано в:
-
writeShortв интерфейсеDataOutput - Параметры:
-
v- записываемыйshort. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeChar
public final void writeChar(int v)
throws IOException Записывает char в базовый выходной поток как 2-байтовое значение, старший байт первым. Если исключение не выбрасывается, счетчик written увеличивается на 2.
- Указано в:
-
writeCharв интерфейсеDataOutput - Параметры:
-
v- записываемое значениеchar. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeInt
public final void writeInt(int v)
throws IOException Записывает int в базовый выходной поток как четыре байта, старший байт первым. Если исключение не выбрасывается, счетчик written увеличивается на 4.
- Указано в:
-
writeIntв интерфейсеDataOutput - Параметры:
-
v- записываемыйint. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeLong
public final void writeLong(long v)
throws IOException Записывает long в базовый выходной поток как восемь байтов, старший байт первым. Если исключение не выбрасывается, счетчик written увеличивается на 8.
- Указано в:
-
writeLongв интерфейсеDataOutput - Параметры:
-
v- записываемыйlong. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeFloat
public final void writeFloat(float v)
throws IOException Преобразует аргумент типа float в int используя метод floatToIntBits класса Float, а затем записывает это значение int в базовый выходной поток как 4-байтовое количество, старший байт первым. Если исключение не выбрасывается, счетчик written увеличивается на 4.
- Указано в:
-
writeFloatв интерфейсеDataOutput - Параметры:
-
v- записываемое значениеfloat. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
-
FilterOutputStream.out,Float.floatToIntBits(float)
writeDouble
public final void writeDouble(double v)
throws IOException Преобразует аргумент типа double в long используя метод doubleToLongBits класса Double, а затем записывает это значение long в базовый выходной поток как 8-байтовое количество, старший байт первым. Если исключение не выбрасывается, счетчик written увеличивается на 8.
- Указано в:
-
writeDoubleв интерфейсеDataOutput - Параметры:
-
v- записываемое значениеdouble. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
-
FilterOutputStream.out,Double.doubleToLongBits(double)
writeBytes
public final void writeBytes(String s)
throws IOException Записывает строку в базовый выходной поток как последовательность байтов. Каждый символ в строке записывается последовательно, путем отбрасывания его старших восьми битов. Если исключение не выбрасывается, счетчик written увеличивается на длину s.
- Указано в:
-
writeBytesв интерфейсеDataOutput - Параметры:
-
s- строка байтов для записи. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
FilterOutputStream.out
writeChars
public final void writeChars(String s)
throws IOException Записывает строку в базовый выходной поток как последовательность символов. Каждый символ записывается в поток данных так же, как и методом writeChar. Если исключение не выбрасывается, счетчик written увеличивается вдвое по сравнению с длиной s.
- Указано в:
-
writeCharsв интерфейсеDataOutput - Параметры:
-
s- записываемое значениеString. - Исключения:
-
IOException- если возникает ошибка ввода-вывода. - См. также:
-
writeChar(int),FilterOutputStream.out
writeUTF
public final void writeUTF(String str)
throws IOException Записывает строку в базовый выходной поток, используя кодировку modified UTF-8 машинно-независимым способом.
Сначала два байта записываются в выходной поток так же, как и методом writeShort, указывая количество байтов, которые будут следовать за ними. Это значение - количество фактически записанных байтов, а не длина строки. После длины каждый символ строки выводится последовательно, используя модифицированную кодировку UTF-8 для символа. Если исключение не выбрасывается, счетчик written увеличивается на общее количество байтов, записанных в выходной поток. Это будет как минимум два плюс длина str, и как максимум два плюс утроенная длина str.
- Указано в:
-
writeUTFв интерфейсеDataOutput - Параметры:
-
str- записываемая строка. - Исключения:
-
IOException- если возникает ошибка ввода-вывода.
size
public final int size()
Возвращает текущее значение счетчика written, количество байтов, записанных в этот поток данных. Если счетчик переполняется, он будет переопределен в Integer.MAX_VALUE.
- Возвращает:
- значение поля
written. - См. также:
written
© 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/io/DataOutputStream.html