Назад к вопросам
Middle
68
questionbank

Для чего используется класс SequenceInputStream в Java?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Используется для последовательного чтения данных из нескольких InputStream'ов, объединяя их в единую последовательность. Иными словами, позволяет читать содержимое нескольких входных потоков так, как будто это содержимое одного большого потока.

Пример использования:

import java.io.*;

public class SequenceInputStreamExample {

    public static void main(String[] args) throws IOException {

        InputStream input1 = new ByteArrayInputStream("Hello, ".getBytes());
        InputStream input2 = new ByteArrayInputStream("world!".getBytes());

        SequenceInputStream sequenceInput = new SequenceInputStream(input1, input2);

        int data = sequenceInput.read();
        while (data != -1) {
            System.out.print((char) data);
            data = sequenceInput.read();
        }

        sequenceInput.close();
    }
}

Основные методы:

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