PushbackReader — 문자를 다시 밀어 넣는 문자 스트림 reader
PushbackReader — 문자를 다시 밀어 넣는 문자 스트림 reader
PushbackReader는 문자 입력 스트림에 pushback(밀어 넣기) 기능을 더하는 클래스예요. 읽은 문자를 스트림에 다시 밀어 넣어 다시 읽을 수 있게 해 줍니다. 파싱 중 문자를 엿보고 되돌려야 할 때 유용해요.
본문
이 클래스는 java.io.Reader → java.io.FilterReader를 상속하며 Closeable, AutoCloseable, Readable을 구현합니다.
필드
protected char[] buf— pushback 버퍼예요.protected int pos— pushback 버퍼의 현재 위치예요.
생성자
PushbackReader(Reader in, int size)— 지정한 크기의 pushback 버퍼로PushbackReader를 만들어요.size <= 0이면IllegalArgumentException을 던져요.PushbackReader(Reader in)— 1문자 pushback 버퍼로 만들어요.
메서드
int read()— 다음 문자를 읽어요. pushback 버퍼에 문자가 있으면 그 문자를, 아니면 기반 reader에서 읽어요.int read(char[] cbuf, int off, int len)— 문자를 배열의 일부로 읽어요.void unread(int c)— 문자 하나를 pushback 버퍼에 다시 넣어요.void unread(char[] cbuf, int off, int len)— 문자 배열의 일부를 다시 넣어요.void unread(char[] cbuf)— 문자 배열 전체를 다시 넣어요.boolean ready()— 이 스트림이 읽을 준비가 됐는지 알려줘요.void mark(int readAheadLimit)— 스트림의 현재 위치를 표시해요.void reset()— 스트림을 마지막 mark 시점으로 되돌려요.boolean markSupported()— mark 지원 여부를 테스트해요.void close()— 스트림을 닫고 관련 시스템 자원을 해제해요.
PushbackReader는 문자 기반 파서가 읽은 문자를 되돌려야 할 때 사용해요.