Software2016. 5. 31. 11:04

○스트림 : 데이터를 운반하는데 사용되는 연결통로


기반스트림 : 보조스트림의 부모가 되는 클래스

입력스트림 

출력스트림 

입출력 대상 종류 

 FileInputStream

FileOutputStream 

파일 

 ByteArrayInputStream

ByteArrayOutputStream 

메모리(byte배열) 

 PipedInputStream

PipedOutputStream 

프로세스(프로세스간의 통신) 

 AudioInputStream

AudioOutputStream 

오디오 장치 


○보조스트림

-주 스트림의 기능을 보완하기 위한 스트림

-실제 데이터를 주고받는 스트림은 아님

-스트림의 기능을 향상시키거나 새로운 기능을 추가

사용법 : 주 스트림을 먼저 생성한 다음 이를 이용하여 보조스트림 생성

ex)

1. 기반스트림 생성

FileInputStream fis = new FileInputStream("test.txt");

2. 보조스트림 생성

BufferedInputStream bis = new BufferedInputStream(fis);

3. 보조스트림 사용

bis.read();


종류

입력 

출력 

 

FilterInputStream

FilterOutputStream 

 

BufferedInputStream

BufferedOutputStream 

 

DataInputStream 

DataOutputStream 

 

SequenceInputStream 

SequenceOutputStream 

 

LineNumbreInputStream 

 

 

ObjectInputStram

ObjectOutputStream 

 

 

PrintStream 

 

PushbackInputStream 

 

 


○문자기반 스트림

-바이트 기반 스트림은 1byte를 기반으로 하므로 java와 같이 문자가 2byte기반인 언어에서는 문자를 처리하는데 어려움이 있다. 문자데이터를 입출력 할 때는 문자기반 스트림을 사용하는 것이 유리하다.


바이트기반 스트림과 문자기반 스트림

 바이트기반 스트림

문자기반 스트림 

FileInputStream

FileOutputStream 

FileReader

FileWriter 

ByteArrayInputStream

ByteArrayOutputSTream 

CharArrayReader

CharArrayWriter 

PipedInputStream

PipedOutputStream 

PipedReader

PipedWriter 

StringBufferInputStream(deprecated)

StringBufferOutputStream(deprecated)

StringReader

StringWriter 


바이트기반 보조스트림과 문자기반 보조스트림

 바이트기반 보조스트림

문자기반 보조스트림 

BufferedInputStream

BufferedOutputStream 

BufferedReader

BufferedWriter 

FilterInputStream

FilterOutputStream 

FilterReader

FilterWriter 

LineNumberInputStream(deperecated) 

LineNumberReader 

PrintStream 

PrintWriter 

PushbackInputStream 

PushbackReader 


Posted by 십자성군