SequenceInputStream в Java
Last updated: 6 мая 2025 г.SequenceInputStream
– сливает потоки в один поток.
Он считывает от первого byte до последнего byte первого InputStream, затем делает то же самое со следующим InputStream и т.д. до последнего InputStream и объединяет их всех в один InputStream.
Допустим, есть два файла person1 и person2 по пути C:/HTML/somedata/
:

Теперь давайте объединим два файловых потока, которые читают из этих файлов в один, и, таким образом, сможем читать данные из обоих файлов через один SequenceInputStream.
1import java.io.*;
2import java.util.*;
3
4class SequenceStream {
5 public static void main(String[] args) {
6 try {
7 FileInputStream is1 =
8 new FileInputStream("C:/HTML/somedata/person1.txt");
9 FileInputStream is2 =
10 new FileInputStream("C:/HTML/somedata/person2.txt");
11 // объединяем
12 SequenceInputStream is = new SequenceInputStream(is2, is1);
13 // выведем содержимое обоих файлов через буферизованные потоки
14 BufferedInputStream in = new BufferedInputStream(is);
15 BufferedOutputStream out = new BufferedOutputStream(System.out);
16 int ch;
17 while ((ch = in.read()) != -1) {
18 out.write((char) ch);
19 out.flush();
20 }
21 } catch (Exception e) {}
22 }
23}
Вывод:

Следующие уроки
PipedStream в Java: передача данных между потоками
10
мин.
PushbackInputStream в Java
8
мин.
OutputStreamWriter в Java
8
мин.