1. Reader
스트림 클래스 | 설명 |
---|---|
FileReader | 파일에서 문자 단위로 읽는 스트림 클래스 |
InputStreamReader | 바이트 단위로 읽은 자료를 문자로 변환해주는 보조 스트림 클래스 |
BufferedReader | 문자로 읽을 때 배열을 제공하여 한꺼번에 읽을 수 있는 기능을 제공하는 보조 스트림 |
2. Reader 주요 메서드
스트림 클래스 | 설명 |
---|---|
int read() | 파일로부터 한 문자를 읽고, 읽은 문자를 반환 |
int read(char[] buf) | 파일로부터 buf 배열에 문자를 읽음 |
int read(char[] buf, int off, int len) | 파일로부터 buf 배열의 off 위치에 len 개수만큼의 문자를 읽음 |
void close() | 입력 스트림과 연결된 대상 리소스를 닫음 |
3. FileReader 사용
public class FileReaderTest {
public static void main(String[] args) {
try(FileReader fr = new FileReader("reader.txt")){ # "",true 지정 가능 (append 기능)
int i;
while( (i = fr.read()) != -1){
System.out.print((char)i);
}
}catch (IOException e) {
e.printStackTrace();
}
}
}
1. Writer
스트림 클래스 | 설명 |
---|---|
FileWriter | 파일에서 문자 단위로 출력하는 스트림 클래스 |
OutputStreamWriter | 바이트 단위의 자료를 문자로 변환해 출력해주는 보조 스트림 클래스 |
BufferedWriter | 문자로 쓸 때 배열을 제공하여 한꺼번에 쓸 수 있는 기능을 제공하는 보조 스트림 |
2. Writer 주요 메서드
스트림 클래스 | 설명 |
---|---|
int write(int c) | 한 문자를 파일에 씀 |
int write(char[] buf) | 문자 배열 buf의 내용을 씀 |
int write(char[] buf, int off, int len) | 문자 배열 buf의 off 위치에서부터 len 개수의 문자를 씀 |
int write(String str) | 문자열 str을 씀 |
int write(String str, int off, int len) | 문자열 str의 off 번째 문자로부터 len 개수만큼 씀 |
int flush() | 출력하기 전에 자료가 있는 공간(출력 버퍼)을 비워 출력 |
void close() | 스트림과 연결된 리소스를 닫습니다. 출력 버퍼도 비워짐 |
3. FileWriter 사용
public class FileWriterTest {
public static void main(String[] args) {
try(FileWriter fw = new FileWriter("writer.txt")){
fw.write('A'); # 문자 하나 출력
char buf[] = {'B','C','D','E','F','G'};
fw.write(buf); # 문자 배열 출력
fw.write("안녕하세요. 잘 써지네요"); # String 출력
fw.write(buf, 1, 2); # 문자 배열의 일부 출력
fw.write("65"); # 숫자를 그대로 출력
}catch(IOException e) {
e.printStackTrace();
}
System.out.println("출력이 완료되었습니다.");
}
}