Spec-Zone .ru
спецификации, руководства, описания, API
|
java.io.ByteArrayInputStream
ByteArrayInputStream
содержит внутренний буфер, который содержит байты, которые могут быть считаны из потока. Внутренний счетчик отслеживает следующий байт, который будет предоставлен read
метод. См. также StringBufferInputStream
(§22.7). public classByteArrayInputStream
extends InputStream { protected byte[]buf
; protected intpos
; protected intcount
; publicByteArrayInputStream
(byte[] buf); publicByteArrayInputStream
(byte[] buf, int offset, int length); public intread
() throws NullPointerException, IndexOutOfBoundsException; public intread
(byte[] b, int off, int len) throws NullPointerException, IndexOutOfBoundsException; public longskip
(long n); public intavailable
(); public voidreset
(); }
22.6.1 protected byte[]
buf
;
Массив байтов, которому предоставил создатель потока. Элементы buf[0]
через buf[count-1]
единственные байты, которые могут когда-либо читаться из потока; элемент buf[pos]
следующий байт, который будет считан.
22.6.2 protected int
pos
;
Это значение должно всегда быть неотрицательным и не больше чем значение count
. Следующий байт, который будет считан из этого потока, будет buf[pos]
.
22.6.3 protected int
count
;
Это значение должно всегда быть неотрицательным и не больше чем длина buf
. Это - одно большее чем позиция последнего байта в пределах buf
это может когда-либо читаться из этого потока.
22.6.4 public
ByteArrayInputStream
(byte[] buf)
Этот конструктор инициализирует недавно создаваемый ByteArrayInputStream
так, чтобы это использовало buf
как его буферный массив. Начальное значение pos
0
и начальное значение count
длина buf
.
22.6.5 public
ByteArrayInputStream
(byte[] buf,
int offset, int length)
Этот конструктор инициализирует недавно создаваемый ByteArrayInputStream
так, чтобы это использовало buf
как его буферный массив. Начальное значение pos
offset
и начальное значение count
offset+len
.
Отметьте это, если байты просто читаются из получающегося входного потока, элементов buf[pos]
через buf[pos+len-1]
будет считан; однако, если a reset
работа (§22.6.10) выполняется, тогда байты buf[0]
через buf[pos-1]
тогда станет доступным для ввода.
22.6.6 public int
read
()
throws NullPointerException, IndexOutOfBoundsException
Если pos
равняется count
, тогда -1
возвращается, чтобы указать на конец файла. Иначе, значение buf[pos]&0xff
возвращается; как раз перед возвратом, pos
постепенно увеличивается 1
.
Реализации read
метод InputStream
(§22.3.1).
22.6.7 public int
read
(byte[] b, int off, int len)
throws NullPointerException, IndexOutOfBoundsException
Если pos
равняется count
, тогда -1
возвращается, чтобы указать на конец файла. Иначе, число k
из байтов чтение равно меньшему из len
и count-pos
. Если k
положительно, тогда байты buf[pos]
через buf[pos+k-1]
копируются в b[off]
через b[off+k-1]
таким образом выполняемый System.arraycopy
(§20.18.16). Значение k
добавляется в pos
и k
возвращается.
Переопределения read
метод InputStream
(§22.3.3).
22.6.8 public long
skip
(long n)
Фактическое число k
из байтов, которые будут пропущены, равно меньшему из n
и count-pos
. Значение k
добавляется в pos
и k
возвращается.
Переопределения skip
метод InputStream
(§22.3.4).
22.6.9 public int
available
()
Количество count-pos
возвращается.
Переопределения available
метод InputStream
(§22.3.5).
22.6.10 public void
reset
()
Значение pos
устанавливается в 0
.
Переопределения reset
метод InputStream
(§22.3.8).
Содержание | Предыдущий | Следующий | Индекс
Спецификация языка Java (HTML, сгенерированный Блинчиком "сюзет" Pelouch 24 февраля 1998)
Авторское право © Sun Microsystems, Inc 1996 года. Все права защищены
Пожалуйста, отправьте любые комментарии или исправления к doug.kramer@sun.com