자바/입출력 IO

InputStream의 자손: Sequence 입력 스트림(보조 스트림)

백_곰 2022. 4. 25. 20:18

1. SequenceInputStream

- 여러 개의 입력스트림을 연속적으로 연결해서 하나의 스트림으로부터 데이터를 읽는 것과 같이

처리할 수 있도록 도와준다.

 

- 생정자를 제외하고는 나머지 작업들에 대한 입력스트림과의 메서드들은 다르지 않다.

 

- 큰 파일을 여러 개의 작은 파일로 나누었다가 하나의 파일로 합치는 것과 같은 작업을 수행할 때 좋다.

 

 

 

- 아래는 SequnceInputStream의 생성자이다.

 

(1) SequnceInputStream(Enumeration e)

: Enumeration에 저장된 순서대로 입력 스트림을 하나의 스트림으로 연결한다.

 

(2) SequnceInputStream(InputStream s1, InputStream s2)

: 두 개의 입력 스트림을 하나로 연결한다.

 

 

- Vector에 연결할 입력 스트림들을 저장한 다음 VectorEnumeration elements()를 호출해서

생성자의 매개변수로 사용한다.

 

Vector 사용 예1)

 

 

기본 사용 예2)

 

 

 

 

1-1. SequenceInputStream를 이해하기 위한 예제(1)

: byte[] 배열을 0~8까지 3등분 후, Sequence의 입력과 ByteArray의 출력을 이용하는 예제이다.

 

Exercise013