OutputStream 추상 클래스는 데이터가 나가는 통로의 역할을 한다.
OutputStream 주요 메서드
통로로 데이터를 내보내는 기능이 필요하다.
데이터를 쓰는 기능과 관련된 메서드는 3개가 있다.
OutputStream은 쓸 수 있어야 한다.
/**
* b를 OutputStream으로 내보낸다
*/
public abstract void write(int b) throws IOException{}
// ByteArrayOutputStream은 Byte Array로 내보내는 통로이다.
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
outputStream.write(1); // outputStream에는 [1]이 들어있다.
outputStream.write(2000); // outputStream에는 [1, -48]이 들어있다.
/**
* byte 배열 b를 OutputStream으로 내보낸다
*/
public void write(byte b[]) throws IOException{}
// ByteArrayOutputStream은 Byte Array로 내보내는 통로이다.
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
outputStream.write(new byte[]{1,2}); // outputStream에는 [1, 2]이 들어있다.
/**
* byte 배열 b를 off부터 len만큼 OutputStream으로 내보낸다
*/
public void write(byte b[], int off, int len) throws IOException{}
OutputStream은 버퍼를 비울 수 있다.
/**
* 버퍼가 존재하는 경우, 해당 버퍼에서 데이터를 모두 목적지로 보내는 역할을 수행한다.
* ByteArrayOutputStream의 경우 버퍼가 없어 아무런 영향이 없다.
*/
public void flush() throws IOException{}
OutputStream은 통로를 닫을 수 있다.
public void close() throws IOException{}
정리
● 데이터 쓰기
● 버퍼 비우기
● 통로 끊기
'JAVA > Chapter14' 카테고리의 다른 글
Java - ::(더블콜론) (0) | 2022.08.30 |
---|---|
Java 입출력(I/O), 스트림(Stream), 버퍼(Buffer) 개념 및 사용법 (0) | 2022.08.25 |
InputStream 정의 (0) | 2022.08.25 |
입출력 스트림 (InputStream, OutputStream)란? (0) | 2022.08.24 |
Ch14-50_스트림의 그룹화와 분할 (0) | 2022.01.15 |