반응형
Reader
- 문자 단위 입력 스트림 최상위 추상 클래스
- 많은 추상 메서드가 선언되어 있고 이를 하위 스트림이 상속받아 구현함
주요 하위 클래스
클래스 | 설명 |
FileReader | 파일에서 문자 단위로 읽는 스트림 클래스 |
InputStreamReader | 바이트 단위로 읽은 자료를 문자로 변환해주는 보조 스트림 클래스 |
BufferedReader | 문자로 읽을 때 배열을 제공하여 한꺼번에 읽을 수 있는 기능을 제공하는 보조 스트림 |
주요 메서드
메서드 | 설명 |
int read() | 파일로부터 한 문자를 읽습니다. 읽은 문자를 반환합니다. |
int read(char[] buf) | 파일로부터 buf 배열에 문자를 읽습니다. |
int read(char[] buf, int off, int len) | 파일로부터 buf 배열의 off위치로부터 len 개수만큼의 문자를 읽습니다. |
void close() | 입력 스트림과 연결된 대상 리소스를 닫습니다. |
FileReader
파일에서 문자 읽기
FileReaderTest.java
package ch62;
import java.io.FileInputStream;
import java.io.FileReader;
public class FileReaderTest {
public static void main(String[] args) {
// 문자로 된 데이터는 FileReader를 이용하는것이 좋다
try(FileReader fis = new FileReader("reader.txt")) {
int i;
while( (i = fis.read()) != -1) {
System.out.print((char)i);
}
} catch (Exception e) {
// TODO: handle exception
}
}
}
Writer
- 문자 단위 출력 스트림 최상위 추상 클래스
- 많은 추상 메서드가 선언되어 있고 이를 하위 스트림이 상속받아 구현함
주요 하위 클래스
클래스 | 설명 |
FileWriter | 파일에서 문자 단위로 출력하는 스트림 클래스 |
OutputStreamWriter | 바이트 단위의 자료를 문자로 변환해 출력해주는 보조 스트림 클래스 |
BufferedWriter | 문자로 쓸 때 배열을 제공하여 한꺼번에 쓸 수있는 기능을 제공하는 보조 스트림 |
주요 메서드
메서드 | 설명 |
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() | 스트림과 연결된 리소스를 닫습니다. 출력버퍼도 비워집니다 |
FileWriter
파일에 문자 쓰기
FileWriterTest.java
package ch62;
import java.io.FileWriter;
public class FileWriterTest {
public static void main(String[] args) {
try(FileWriter fw = new FileWriter("write.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 (Exception e) {
// TODO: handle exception
}
System.out.println("출력이 완료되었습니다.");
}
}
반응형
'언어 > JAVA' 카테고리의 다른 글
DataStream, 직렬화 (0) | 2021.05.23 |
---|---|
여러가지 보조 스트림 클래스 (0) | 2021.05.23 |
OutputSteam (출력 스트림) (0) | 2021.05.23 |
바이트 단위 입출력 스트림 (0) | 2021.05.23 |
표준 입출력 스트림 (0) | 2021.05.23 |