Класс SequenceInputStream
- Все реализованные интерфейсы:
-
Closeable,AutoCloseable
public class SequenceInputStream extends InputStream
SequenceInputStream представляет собой логическое объединение других потоков ввода. Он начинает работу с упорядоченным набором потоков ввода и считывает данные из первого до достижения конца файла, после чего он считывает данные из второго и так далее, пока не достигнет конца файла в последнем из содержащихся потоков ввода.- С момента:
- 1.0
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SequenceInputStream |
Инициализирует новый созданный объект SequenceInputStream, запоминая два аргумента, которые будут читаться в порядке: сначала s1, а затем s2, чтобы предоставить байты для чтения из этого объекта SequenceInputStream. |
SequenceInputStream |
Инициализирует новый созданный объект SequenceInputStream, запоминая аргумент, который должен быть перечислением Enumeration, производящим объекты, тип которых в момент выполнения – InputStream. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
available() |
Возвращает оценку количества байтов, которые могут быть прочитаны (или пропущены) из текущего базового потока ввода без блокировки при следующем вызове метода для текущего базового потока ввода. Следующий вызов может быть в том же потоке или в другом потоке. Одно чтение или пропуск такого количества байтов не заблокирует, но может прочитать или пропустить меньше байтов. Этот метод просто вызывает |
void |
close() |
Закрывает этот поток ввода и освобождает все системные ресурсы, связанные с потоком. |
int |
read() |
Считывает следующий байт данных из потока ввода. |
int |
read |
Считывает до len байтов данных из этого потока ввода в массив байтов. |
Методы, объявленные в классе java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, skipNBytes, transferTo
Подробное описание конструкторов
SequenceInputStream
public SequenceInputStream(Enumeration<? extends InputStream> e)
SequenceInputStream, запоминая аргумент, который должен быть перечислением Enumeration, производящим объекты, тип которых в момент выполнения – InputStream. Потоки ввода, которые генерируются перечислением, будут читаться в порядке, чтобы предоставить байты для чтения из этого объекта SequenceInputStream. После того, как каждый поток ввода из перечисления будет исчерпан, он будет закрыт путем вызова метода close.- Параметры:
-
e- перечисление потоков ввода. - См. также:
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- если произошла ошибка ввода-вывода. - См. также:
close
public void close() throws IOException
SequenceInputStream не может выполнять операции ввода и не может быть повторно открыт. Если этот поток был создан из перечисления, все оставшиеся элементы запрашиваются из перечисления и закрываются до того, как метод close вернет значение.
- Указано в:
-
closeв интерфейсеAutoCloseable - Указано в:
-
closeв интерфейсеCloseable - Переопределяет:
-
closeв классеInputStream - Исключения:
-
IOException- если произошла ошибка ввода-вывода.
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/io/SequenceInputStream.html