Reader — 문자 스트림을 읽는 추상 클래스

Reader — 문자 스트림을 읽는 추상 클래스

Reader는 문자 스트림을 읽기 위한 추상 클래스예요. 바이트 단위가 아니라 16비트 유니코드 문자 단위로 데이터를 읽습니다. 모든 문자 입력 스트림 클래스의 슈퍼클래스이며, 하위 클래스는 최소한 read(char[], int, int) 메서드를 구현해야 해요.

출처: Java API Reference

본문

이 클래스는 java.lang.Object를 상속하며 Readable, Closeable, AutoCloseable을 구현합니다. 직접 알려진 하위 클래스로 BufferedReader, CharArrayReader, FilterReader, InputStreamReader, PipedReader, StringReader 등이 있어요. 파일에서 문자를 읽을 수 있는 능력은 FileReader(즉 InputStreamReader)를 참고하세요.

필드

  • protected Object lock — 이 스트림의 동기화에 사용되는 객체예요.

생성자

  • protected Reader() — 하위 클래스가 호출하기 위한 생성자예요.
  • protected Reader(Object lock) — 지정한 lock 객체로 만들며, 하위 클래스가 호출하기 위한 생성자예요.

메서드

  • abstract int read(char[] cbuf, int off, int len) — 문자를 배열의 일부로 읽어요.
  • int read() — 단일 문자를 읽어 0~65535 범위의 정수로 반환하고, 끝이면 -1을 반환해요.
  • int read(char[] cbuf) — 문자를 배열로 읽어요.
  • long skip(long n) — 문자를 건너뛰어요.
  • boolean ready() — 이 스트림이 읽을 준비가 됐는지 알려줘요.
  • boolean markSupported() — mark 지원 여부를 테스트해요.
  • void mark(int readAheadLimit) — 스트림의 현재 위치를 표시해요.
  • void reset() — 스트림을 가장 최근의 mark로 재설정해요.
  • void close() — 스트림을 닫고 관련 시스템 자원을 해제해요.
  • long transferTo(Writer out) — 이 reader의 모든 문자를 주어진 writer로 전송해요.
  • static Reader nullReader() — 문자를 읽지 않는 새 Reader를 반환해요.

Reader는 문자 데이터를 다루는 모든 스트림의 기반이에요. String으로부터 읽으려면 StringReader, 파일은 FileReader, 네트워크/바이트는 InputStreamReader로 감싸 사용해요.

더 알아보기 (Learn more)