22일차

고규빈·2022년 1월 17일
0
post-thumbnail

1. 입출력

입출력(I/O)과 스트림(stream)

▶ 입출력(I/O)이란?

  • 입력(Input)과 출력(Output)을 줄여 부르는 말
  • 두 대상 간의 데이터를 주고 받는 것

▶ 스트림(stream)이란?

  • 데이터를 운반(입출력)하는데 사용되는 연결통로
  • 연속적인 데이터의 흐름을 물(stream)에 비유해서 붙여진 이름
  • 하나의 스트림으로 입출력을 동시에 수행할 수 없다.(단방향 통신)
  • 입출력을 동시에 수행하려면, 2개의 스트림이 필요하다.

바이트기반 스트림 – InputStream, OutputStream

  • 데이터를 바이트(byte)단위로 주고 받는다.

보조스트림

  • 스트림의 기능을 향상시키거나 새로운 기능을 추가하기 위해 사용
  • 독립적으로 입출력을 수행할 수 없다.

문자기반 스트림 – Reader, Writer

  • 입출력 단위가 문자(char, 2 byte)인 스트림. 문자기반 스트림의 최고조상

2. 바이트기반 스트림

InputStream과 OutputStream

▶ InputStream(바이트기반 입력스트림의 최고 조상)의 메서드

▶ OutputStream(바이트기반 출력스트림의 최고 조상)의 메서드

3. 바이트기반 보조스트림

BufferedInputStream과 BufferedOutputStream

  • 입출력 효율을 높이기 위해 버퍼(byte[])를 사용하는 보조스트림
  • 보조스트림을 닫으면 기반스트림도 닫힌다.

4. 문자기반 스트림

Reader와 Writer

▶ Reader(문자기반 입력스트림의 최고 조상)의 메서드

▶ Writer(문자기반 출력스트림의 최고 조상)의 메서드

FileReader와 FileWriter

  • 문자기반의 파일 입출력. 텍스트 파일의 입출력에 사용한다.
profile
안녕하세요

0개의 댓글