|
Spec-Zone .ru
спецификации, руководства, описания, API
|
java.io.InputStreampublic abstract classInputStream{ public abstract intread() throws IOException; public intread(byte[] b) throws IOException, NullPointerException; public intread(byte[] b, int off, int len) throws IOException, NullPointerException, IndexOutOfBoundsException; public longskip(long n) throws IOException; public intavailable() throws IOException; public voidclose() throws IOException; public voidmark(int readlimit); public voidreset() throws IOException; public booleanmarkSupported(); }
22.3.1 public abstract int
read() throws IOException
Общий контракт read это, это читает один байт из входного потока. Байт возвращается как целое число в диапазоне 0 к 255 (0x00-0xff). Если никакой байт не доступен, потому что поток в конце файла, значения -1 возвращается.
Этот метод блоки до входных данных доступен, конец файла обнаруживается, или исключение выдается.
Если байт не может быть считан ни по какой причине кроме конца файла, IOException бросается. В частности IOException бросается, если входной поток был закрыт (§22.3.6).
22.3.2 public int
read(byte[] b)
throws IOException, NullPointerException
Общий контракт read(b) это, это читает некоторое число байтов от входного потока и хранит их в буферный массив b. Число байтов фактически чтение возвращается как целое число.
Этот метод блоки до входных данных доступен, конец файла обнаруживается, или исключение выдается.
Если b null, a NullPointerException бросается.
Если длина b нуль, тогда никакие байты не читаются и 0 возвращается; иначе, есть попытка считать по крайней мере один байт. Если никакой байт не доступен, потому что поток в конце файла, значения -1 возвращается; иначе, по крайней мере один байт читается и сохранен в b.
Первое побайтовое чтение сохранено в элемент b[0], следующий в b[1], и так далее. Число чтения байтов, самое большее, равно длине b. Позвольте k быть числом байтов фактически чтение; эти байты будут сохранены в элементах b[0] через b[k-1], отъезд элементов b[k] через b[b.length-1] незатронутый.
Если первый байт не может быть считан ни по какой причине кроме конца файла, то IOException бросается. В частности IOException бросается, если входной поток был закрыт (§22.15.5).
read(b) метод для класса InputStream имеет тот же самый эффект как:
read(b, 0, b.length)
22.3.3 public int
read(byte[] b, int off, int len)
throws IOException, NullPointerException,
IndexOutOfBoundsException
Общий контракт read(b, off, len) это, это читает некоторое число байтов от входного потока и хранит их в буферный массив b. Попытка предпринимается, чтобы читать столько, сколько len байты, но меньшее число могут быть считаны, возможно обнулить. Число байтов фактически чтение возвращается как целое число.
Этот метод блоки до входных данных доступен, конец файла обнаруживается, или исключение выдается.
Если b null, a NullPointerException бросается.
Если off отрицательно, или len отрицательно, или off+len больше чем длина массива b, тогда IndexOutOfBoundsException бросается.
Если len нуль, тогда никакие байты не читаются и 0 возвращается; иначе, есть попытка считать по крайней мере один байт. Если никакой байт не доступен, потому что поток в конце файла, значения -1 возвращается; иначе, по крайней мере один байт читается и сохранен в b.
Первое побайтовое чтение сохранено в элемент b[off], следующий в b[off+1], и так далее. Число чтения байтов, самое большее, равно len. Позвольте k быть числом байтов фактически чтение; эти байты будут сохранены в элементах b[off] через b[off+k-1], отъезд элементов b[off+k] через b[off+len-1] незатронутый.
В каждом случае, элементах b[0] через b[off] и элементы b[off+len] через b[b.length-1] незатронуты.
Если первый байт не может быть считан ни по какой причине кроме конца файла, то IOException бросается. В частности IOException бросается, если входной поток был закрыт (§22.15.5).
read(b, off, len) метод для класса InputStream простые вызовы метод read() неоднократно. Если первое такой призывать результаты IOException, то исключение возвращается из звонка read(b, off, len) метод. Если любой последующий звонок read() результаты в a IOException, исключение поймано и обработано, как будто это был конец файла; чтение байтов до той точки сохранено в b и число чтения байтов перед исключением произошло, возвращается.
22.3.4 public long
skip(long n) throws IOException
Общий контракт skip это, это предпринимает попытку перескочить n байты данных от входного потока, отбрасывая пропущенные байты. Однако, это может перескочить через некоторое меньшее число байтов, возможно обнулить. Это может следовать из любого из многих условий; достижение конца файла прежде n байты были пропущены, только одна возможность. Фактическое число пропущенных байтов возвращается.
22.3.5 public int
available() throws IOException
Общий контракт available это, это возвращает целое число k; следующая вызывающая сторона метода для этого входного потока, который мог бы быть тем же самым потоком или другим потоком, может тогда ожидать быть в состоянии считать или пропустить до k байты, не блокируя (ожидающий входных данных, чтобы прибыть).
available метод для класса InputStream всегда возвраты 0.
22.3.6 public int
close() throws IOException
Общий контракт close это, это закрывает входной поток. Закрытый поток не может выполнить входные операции и не может быть вновь открыт.
close метод для класса InputStream ничего не делает и просто возвращается.
22.3.7 public void
mark(int readlimit)
Общий контракт mark это, если метод markSupported возвраты true, поток так или иначе помнит все чтение байтов после звонка mark и готов предоставлять те те же самые байты снова если и всякий раз, когда метод reset вызывается. Однако, поток не обязан помнить любые данные вообще если больше чем readlimit байты читаются из потока прежде reset вызывается.
mark метод для класса InputStream ничего не делает.
22.3.8 public void
reset() throws IOException
markSupported возвраты true, тогда: mark не был вызван, так как поток создавался, или число байтов, считанных из потока с тех пор mark был последнее вызванный, больше чем параметр mark при той последней возможности, затем IOException мог бы быть брошен.
IOException не бросается, тогда поток сбрасывается к состоянию так, что все чтение байтов начиная с нового звонка mark (или начиная с запуска файла, если mark не был вызван), будет повторно предоставлен последующим вызывающим сторонам read метод, сопровождаемый любыми байтами, которые иначе были бы следующими входными данными со времени звонка reset. markSupported возвраты false, тогда: reset может бросить IOException.
IOException не бросается, тогда поток сбрасывается к фиксированному состоянию, которое зависит от определенного типа входного потока и как это создавалось. Байты, которые будут предоставлены последующим вызывающим сторонам read метод зависит от определенного типа входного потока. reset для класса InputStream всегда броски IOException.22.3.9 public boolean
markSupported()
Общий контракт markSupported это, если это возвращается true, тогда поток поддерживает mark (§22.3.7) и reset (§22.3.8) операции. Для любого приведенного примера InputStream, этот метод должен последовательно возвращать то же самое значение истинности всякий раз, когда это вызывают.
markSupported метод для класса InputStream возвраты false.
Содержание | Предыдущий | Следующий | Индекс
Спецификация языка Java (HTML, сгенерированный Блинчиком "сюзет" Pelouch 24 февраля 1998)
Авторское право © Sun Microsystems, Inc 1996 года. Все права защищены
Пожалуйста, отправьте любые комментарии или исправления к doug.kramer@sun.com