728x90
문자 기반 스트림
문자 데이터를 다룰 때 사용
여러 종류의 인코딩과 자바에서 사용하는 유니코드 간의 변환을 자동으로 처리
FileReader : 인코딩 -> 유니코드
FileWriter : 유니코드 -> 인코딩
FileWriter
바로 사용법을 알아보자
import java.io.FileWriter;
import java.io.IOException;
public class Main {
public static void main(String args[]) {
try {
String fileName = "eroomFileWriter.txt";
FileWriter writer = new FileWriter(fileName);
String str = "이룸 File Writer 테스트!";
writer.write(str);
writer.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
FileReader
방금 FileWriter로 생성한 파일을 읽어와 보도록 하자
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String args[]) {
try {
String fileName = "eroomFileWriter.txt";
FileReader file = new FileReader(fileName);
int data = 0;
while((data=file.read()) != -1) {
System.out.print((char)data);
}
file.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
// 출력
이룸 File Writer 테스트!
BufferedReader
바이트 기반 스트림과 마찬가지로, Reader에도 성능을 개선할 수 있는 BufferedReader가 있다
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String args[]) {
try {
String fileName = "eroomFileWriter.txt";
FileReader file = new FileReader(fileName);
BufferedReader buffered = new BufferedReader(file);
int data = 0;
while((data=buffered.read()) != -1) {
System.out.print((char)data);
}
file.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
// 출력
이룸 File Writer 테스트!
728x90
'개발일지 > Java' 카테고리의 다른 글
Java 스레드 (Thread) (0) | 2022.09.24 |
---|---|
Java File (0) | 2022.09.24 |
Java InputStream, OutputStream (0) | 2022.09.24 |
Java Optional<T> (0) | 2022.09.24 |
Java 스트림 생성, 중간 연산, 최종 연산 (0) | 2022.09.20 |