|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface DataOutput
DataOutput интерфейс предусматривает преобразование данных от любых из типов примитивов Java к серии байтов и записи этих байтов к двоичному потоку. Есть также средство для того, чтобы преобразовать a String в измененный формат UTF-8 и запись получающейся серии байтов. Для всех методов в этом интерфейсе, которые пишут байты, это - обычно истина это, если байт не может быть записан ни по какой причине, IOException бросается.
DataInput, DataOutputStream| Модификатор и Тип | Метод и Описание |
|---|---|
void |
write(byte[] b)
Записи к потоку вывода все байты в массиве
b. |
void |
write(byte[] b, int off, int len)
Записи
len байты от массива b, в порядке, к потоку вывода. |
void |
write(int b)
Записи к потоку вывода восемь битов младшего разряда параметра
b. |
void |
writeBoolean(boolean v)
Записи a
boolean оцените этому потоку вывода. |
void |
writeByte(int v)
Записи к потоку вывода восемь младших разрядов - биты параметра
v. |
void |
writeBytes(String s)
Пишет строка в поток вывода.
|
void |
writeChar(int v)
Записи a
char значение, которое состоит из двух байтов к потоку вывода. |
void |
writeChars(String s)
Пишет каждый символ в строке
s, к потоку вывода, в порядке, два байта за символ. |
void |
writeDouble(double v)
Записи a
double значение, которое состоит из восьми байтов к потоку вывода. |
void |
writeFloat(float v)
Записи a
float значение, которое состоит из четырех байтов к потоку вывода. |
void |
writeInt(int v)
Записи
int значение, которое состоит из четырех байтов к потоку вывода. |
void |
writeLong(long v)
Записи a
long значение, которое состоит из восьми байтов к потоку вывода. |
void |
writeShort(int v)
Записи два байта к потоку вывода, чтобы представить значение параметра.
|
void |
writeUTF(String s)
Записи два байта информации о длине к потоку вывода, сопровождаемому измененным представлением UTF-8 каждого символа в строке
s. |
void write(int b)
throws IOException
b. 24 бита старшего разряда b игнорируются.b - байт, который будет записан.IOException - если ошибка ввода-вывода происходит.void write(byte[] b)
throws IOException
b. Если b null, a NullPointerException бросается. Если b.length нуль, тогда никакие байты не пишутся. Иначе, байт b[0] пишется сначала, тогда b[1], и так далее; последний записанный байт b[b.length-1].b - данные.IOException - если ошибка ввода-вывода происходит.void write(byte[] b,
int off,
int len)
throws IOException
len байты от массива b, в порядке, к потоку вывода. Если b null, a NullPointerException бросается. Если off отрицательно, или len отрицательно, или off+len больше чем длина массива b, тогда IndexOutOfBoundsException бросается. Если len нуль, тогда никакие байты не пишутся. Иначе, байт b[off] пишется сначала, тогда b[off+1], и так далее; последний записанный байт b[off+len-1].b - данные.off - запуск смещается в данных.len - число байтов, чтобы записать.IOException - если ошибка ввода-вывода происходит.void writeBoolean(boolean v)
throws IOException
boolean оцените этому потоку вывода. Если параметр v true, значение (byte)1 пишется; если v false, значение (byte)0 пишется. Байт, записанный этим методом, может быть считан readBoolean метод интерфейса DataInput, который тогда возвратит a boolean равный v.v - булево, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeByte(int v)
throws IOException
v. 24 бита старшего разряда v игнорируются. (Это означает это writeByte делает точно ту же самую вещь как write для целочисленного параметра.) Байт, записанный этим методом, может быть считан readByte метод интерфейса DataInput, который тогда возвратит a byte равный (byte)v.v - значение байта, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeShort(int v)
throws IOException
(byte)(0xff & (v >> 8))
(byte)(0xff & v)
Байты, записанные этим методом, могут быть считаны readShort метод интерфейса DataInput , который тогда возвратит a short равный (short)v.
v - short значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeChar(int v)
throws IOException
char значение, которое состоит из двух байтов к потоку вывода. Значения байта, которые будут записаны, в показанном порядке:
(byte)(0xff & (v >> 8))
(byte)(0xff & v)
Байты, записанные этим методом, могут быть считаны readChar метод интерфейса DataInput , который тогда возвратит a char равный (char)v.
v - char значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeInt(int v)
throws IOException
int значение, которое состоит из четырех байтов к потоку вывода. Значения байта, которые будут записаны, в показанном порядке:
(byte)(0xff & (v >> 24))
(byte)(0xff & (v >> 16))
(byte)(0xff & (v >> 8))
(byte)(0xff & v)
Байты, записанные этим методом, могут быть считаны readInt метод интерфейса DataInput , который тогда возвратится int равный v.
v - int значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeLong(long v)
throws IOException
long значение, которое состоит из восьми байтов к потоку вывода. Значения байта, которые будут записаны, в показанном порядке:
(byte)(0xff & (v >> 56))
(byte)(0xff & (v >> 48))
(byte)(0xff & (v >> 40))
(byte)(0xff & (v >> 32))
(byte)(0xff & (v >> 24))
(byte)(0xff & (v >> 16))
(byte)(0xff & (v >> 8))
(byte)(0xff & v)
Байты, записанные этим методом, могут быть считаны readLong метод интерфейса DataInput , который тогда возвратит a long равный v.
v - long значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeFloat(float v)
throws IOException
float значение, которое состоит из четырех байтов к потоку вывода. Это делает это, как будто это сначала преобразовывает это float оцените int точно способом Float.floatToIntBits метод и затем пишет int значение точно способом writeInt метод. Байты, записанные этим методом, могут быть считаны readFloat метод интерфейса DataInput, который тогда возвратит a float равный v.v - float значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeDouble(double v)
throws IOException
double значение, которое состоит из восьми байтов к потоку вывода. Это делает это, как будто это сначала преобразовывает это double оцените a long точно способом Double.doubleToLongBits метод и затем пишет long значение точно способом writeLong метод. Байты, записанные этим методом, могут быть считаны readDouble метод интерфейса DataInput, который тогда возвратит a double равный v.v - double значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeBytes(String s) throws IOException
s, взятый в порядке, один байт пишется потоку вывода. Если s null, a NullPointerException бросается. Если s.length нуль, тогда никакие байты не пишутся. Иначе, символ s[0] пишется сначала, тогда s[1], и так далее; записанный последний знак s[s.length-1]. Для каждого символа один байт пишется, байт младшего разряда, точно способом writeByte метод. Старший разряд восемь битов каждого символа в строке игнорируется.
s - строка байтов, которые будут записаны.IOException - если ошибка ввода-вывода происходит.void writeChars(String s) throws IOException
s, к потоку вывода, в порядке, два байта за символ. Если s null, a NullPointerException бросается. Если s.length нуль, тогда никакие символы не пишутся. Иначе, символ s[0] пишется сначала, тогда s[1], и так далее; записанный последний знак s[s.length-1]. Для каждого символа два байта фактически пишутся, байт старшего разряда сначала, точно способом writeChar метод.s - строковое значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.void writeUTF(String s) throws IOException
s. Если s null, a NullPointerException бросается. Каждый символ в строке s преобразовывается в группу один, два, или три байта, в зависимости от значения символа. Если символ c находится в диапазоне \u0001 через \u007f, это представляется на один байт:
(byte)c
Если символ c \u0000 или находится в диапазоне \u0080 через \u07ff, тогда это представляется на два байта, чтобы быть записанным в показанном порядке:
(byte)(0xc0 | (0x1f & (c >> 6)))
(byte)(0x80 | (0x3f & c))
Если символ c находится в диапазоне \u0800 через uffff, тогда это представляется на три байта, чтобы быть записанным в показанном порядке:
(byte)(0xe0 | (0x0f & (c >> 12)))
(byte)(0x80 | (0x3f & (c >> 6)))
(byte)(0x80 | (0x3f & c))
Во-первых, общее количество байтов должно было представить все символы s вычисляется. Если это число больше чем 65535, тогда a UTFDataFormatException бросается. Иначе, эта длина пишется потоку вывода точно способом writeShort метод; после этого один - два - или трехбайтовое представление каждого символа в строке s пишется.
Байты, записанные этим методом, могут быть считаны readUTF метод интерфейса DataInput , который тогда возвратит a String равный s.
s - строковое значение, которое будет записано.IOException - если ошибка ввода-вывода происходит.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92