Spec-Zone.ru › OpenJDK 21

Класс SequenceInputStream

java.lang.Object
java.io.InputStream
java.io.SequenceInputStream
Все реализованные интерфейсы:
Closeable, AutoCloseable
public class SequenceInputStream extends InputStream
A SequenceInputStream представляет собой логическое объединение других потоков ввода. Он начинается с упорядоченного набора потоков ввода и считывает данные из первого до достижения конца файла, после чего считывает из второго и так далее, пока не достигнет конца файла в последнем из содержащихся потоков ввода.
С:
1.0

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

Конструктор Описание
SequenceInputStream(InputStream s1, InputStream s2)
Инициализирует новый SequenceInputStream, запоминая два аргумента, которые будут читаться в порядке: сначала s1, а затем s2, чтобы предоставить байты для чтения из этого SequenceInputStream.
SequenceInputStream(Enumeration<? extends InputStream> e)
Инициализирует новый SequenceInputStream, запоминая аргумент, который должен быть Enumeration, генерирующим объекты, тип которых в момент выполнения является InputStream.

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

Модификатор и тип Метод Описание
int available()
Возвращает оценку количества байтов, которые можно прочитать (или пропустить) из текущего базового потока ввода без блокировки следующим вызовом метода для текущего базового потока ввода. Следующий вызов может быть от того же потока или другого потока. Одно чтение или пропуск этого количества байтов не заблокирует, но может прочитать или пропустить меньше байтов.

Этот метод просто вызывает available текущего базового потока ввода и возвращает результат.

void close()
Закрывает этот поток ввода и освобождает все системные ресурсы, связанные с этим потоком.
int read()
Читает следующий байт данных из потока ввода.
int read(byte[] b, int off, int len)
Читает до len байтов данных из этого потока ввода в массив байтов.

Методы, объявленные в классе java.io.InputStream

mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, transferTo

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

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

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

SequenceInputStream

public SequenceInputStream(Enumeration<? extends InputStream> e)
Инициализирует новый SequenceInputStream, запоминая аргумент, который должен быть Enumeration, генерирующим объекты, тип которых в момент выполнения является InputStream. Потоки ввода, которые генерируются перечислением, будут читаться в порядке, чтобы предоставить байты для чтения из этого SequenceInputStream. После того как каждый поток ввода из перечисления будет исчерпан, он закрывается вызовом его метода close.
Параметры:
e - перечисление потоков ввода.
См. также:
  • Enumeration

SequenceInputStream

public SequenceInputStream(InputStream s1, InputStream s2)
Инициализирует новый SequenceInputStream, запоминая два аргумента, которые будут читаться в порядке: сначала s1 и затем s2, чтобы предоставить байты для чтения из этого SequenceInputStream.
Параметры:
s1 - первый поток ввода для чтения.
s2 - второй поток ввода для чтения.

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

available

public int available() throws IOException
Возвращает оценку количества байтов, которые можно прочитать (или пропустить) из текущего базового потока ввода без блокировки следующим вызовом метода для текущего базового потока ввода. Следующий вызов может быть от того же потока или другого потока. Одно чтение или пропуск этого количества байтов не заблокирует, но может прочитать или пропустить меньше байтов.

Этот метод просто вызывает available текущего базового потока ввода и возвращает результат.

Переопределяет:
available в классе InputStream
Возвращает:
оценку количества байтов, которые можно прочитать (или пропустить) из текущего базового потока ввода без блокировки или 0 если этот поток ввода был закрыт вызовом метода close()
Исключения:
IOException - если произошла ошибка ввода-вывода.
С:
1.1

read

public int read() throws IOException
Читает следующий байт данных из потока ввода. Значение байта возвращается как целое число со знаком в диапазоне 0 до 255. Если байт недоступен из-за достижения конца потока, возвращается значение -1. Этот метод блокируется до тех пор, пока данные ввода не станут доступны, пока не будет обнаружен конец потока или не будет выброшено исключение.

Этот метод пытается прочитать один байт из текущего подпотока. Если он достигает конца потока, он вызывает метод close текущего подпотока и начинает чтение из следующего подпотока.

Указано в:
read в классе InputStream
Возвращает:
следующий байт данных или -1 если достигнут конец потока.
Исключения:
IOException - если произошла ошибка ввода-вывода.

read

public int read(byte[] b, int off, int len) throws IOException
Читает до len байтов данных из этого потока ввода в массив байтов. Если достигнут конец последнего содержащего потока, возвращается -1. В противном случае, если len не равно нулю, метод блокируется до тех пор, пока не станет доступен как минимум 1 байт ввода; если len равно нулю, байты не читаются и возвращается 0.

Метод read из SequenceInputStream пытается прочитать данные из текущего подпотока. Если ему не удается прочитать байты из-за того, что подпоток достиг конца потока, он вызывает метод close текущего подпотока и начинает чтение из следующего подпотока.

Переопределяет:
read в классе InputStream
Параметры:
b - буфер, в который читаются данные.
off - начальный смещение в массиве b, в котором записываются данные.
len - максимальное количество считываемых байтов.
Возвращает:
общее количество прочитанных байтов в буфер или -1 если больше нет данных, поскольку достигнут конец последнего содержащего потока.
Исключения:
NullPointerException - если конец последнего содержащего потока не достигнут и b равно null.
IndexOutOfBoundsException - если конец последнего содержащего потока не достигнут и off отрицательное, len отрицательное или len больше b.length - off
IOException - если произошла ошибка ввода-вывода.
См. также:
  • InputStream.read()

close

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

Если этот поток был создан из перечисления, все оставшиеся элементы запрашиваются из перечисления и закрываются до того, как метод close вернет значение.

Указано в:
close в интерфейсе AutoCloseable
Указано в:
close в интерфейсе Closeable
Переопределяет:
close в классе InputStream
Исключения:
IOException - если произошла ошибка ввода-вывода.

© 1993, 2023, 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/21/docs/api/java.base/java/io/SequenceInputStream.html

Spec-Zone.ru

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