21/06/22 JAVA <스트림>

yeoni·2021년 10월 26일

JAVA

목록 보기
18/18

네트워크에서 자료의 흐름이 물과 같다는 의미에서 유래

다양한 입출력 장치에 독립적으로 일관성있는 입출력을 제공하는 방식

입출력이 구현되는 곳 : 파일 디스크, 마우스, 키보드, 메모리 네트워크 등

입출력

다른곳의 데이터를 가져오는 것, 다른 곳으로 데이터를 내보내는 것

입력 : 파일 읽기, 이미지n동영상 불러오기

출력 : 파일 쓰기, 이미지n동영상 내보내기

기본클래스

1byte단위로 데이터를 전송

InputStream 클래스

FileInputStream
DataInputStream
BufferedInputStream

OutputStream 클래스

FileOutputStream
DataOutputStream
BufferedOutputStream

스트림의 구분

대상 기준

입력스트림 : 대상으로부터 자료를 읽어들이는 스트림(read)
출력스트림 : 대상으로 자료를 출력하는 스트림(write)

자료의 종류

바이트 스트림: 동영상, 음악 파일 등을 읽고 쓸 때 사용
문자 스트림: 바이트 단위로 처리하면 문자는 깨짐. 2바이트 단위로 처리하도록 구현된 스트림

기능

기반 스트림: 대상에 직접 자료를 읽고 쓰는 기능의 스트림
보조 스트림: 직접 읽고 쓰는 기능은 없고 추가적인 기능을 더해주는 스트림
보조스트림은 직접 읽고 쓰는 기능이 없으므로 항상 기반스트림이나 또 다른 보조스트림을 생성자 매개변수로 포함함.
ex) 기반스트림+보조스트림A+보조스트림B

표준입출력

System클래스의 표준 입출력 멤버
System.out : 표준 출력 스트림 (모니터)
System.in : 표준 입력 스트림 (키보드)
System.err : 표준 에러 출력 스트림 (모니터)

profile
24시간이 부족한 개발자

0개의 댓글