Java/Do It! 자바 프로그래밍

[JAVA] 15-4. 문자 단위 스트림

HSY_mumu 2022. 5. 11. 23:41
728x90

1. Reader

Reader문자 단위로 읽는 스트림 중 최상위 스트림이다.

 

<Reader 하위 클래스>

FileReader 파일에서 문자 단위로 읽는 스트림
InputStreamReader 바이트 단위로 읽은 자료-> 문자 변환하는 보조 스트림
BufferedReader 문자를 읽을 때 배열을 제공하여 한번에 읽을 수 있도록 하는 보조 스트림

 

<Reader 클래스 메서드>

int read() 파일에서 한 문자 읽기
int read(char[] buff) 파일에서 buf 배열의 문자 읽기
int read(char[] buf, int off, int len) 파일에서 buf 배열의 off 위치부터 len 만큼 문자 읽기
void close() 스트림과 연결된 파일 리소스 닫기

2. FileReader

FileReader 는 Reader 중 가장 많이 사용하는 스트림 클래스다.

 

<FileReader 클래스 생성자>

생성자 매개변수 설명
FileReader(String name) 파일 이름(경로 포함) 입력스트림 생성
FileReader(File f) File 클래스 정보

FileInputStream 을 활용하여 바이트 단위로 문자를 읽으면 한글이 깨지는 문제가 발생한다. 

따라서, 문자를 입출력할 때는 문자 스트림을 이용해야한다.

3. Writer

Writer 문자 단위로 출력하는 스트림 중 최상위 스트림이다.

 

<Writer 하위 클래스>

FileWriter 파일 문자 단위로 출력하는 스트림
OutputStreamWriter 바이트 단위로 출력한 자료-> 문자 변환하는 보조 스트림
BufferedWriter 문자를 출력할 때 배열을 제공하여 한번에 출력할수 있도록 하는 보조 스트림

 

<Writer 클래스 메서드>

int write(int c) 파일에 한 문자 출력
int write(char[] buf) 파일에 buf 배열의 문자 출력
int write(char[] buf, int off, int len) 파일에 buf 배열의 off 위치부터 len 만큼 문자 출력
void wirte(String str) 파일에 문자열 str 출력
void wirte(String str, int off, int len) 파일에 문자열 str의 off 위치부터 len 만큼 문자 출력
void flush() 출력을 위해 자료가 잠시 대기하는 출력 버퍼를 강제로 비워 자료 출력
void close() 스트림과 연결된 파일 리소스 닫기

4. FileWriter

FileWriter 는 Writer 중 가장 많이 사용하는 스트림 클래스다. 출력 파일이 존재하지 않으면 파일을 생성한다.

<FileWriter 클래스 생성자>

생성자 매개변수   설명
FileWriter(String name) 파일 이름(경로 포함)   출력스트림 생성
FileWriter(String name, boolean append) 파일 이름(경로 포함) 이어쓰기 설정
(디폴트 false)
FileWriter(File f) File 클래스 정보  
FileWriter(File f, boolean append) File 클래스 정보 이어쓰기 설정
(디폴트 false)

 

728x90