BufferedReader와 BufferedWriter
버퍼를 이용해서 입출력의 효율을 높일 수 있도록 해주는 역할.
readLine()을 사용하면 데이터를 라인단위로 읽을 수 있고, newLine()으로 줄바꿈이 가능한 메서드를 가지고있다.
"input.txt" 파일에서 텍스트를 읽어와서 "output.txt" 파일에 한 줄씩 쓰는 예시이다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class BufferedReaderWriterExample {
public static void main(String[] args) {
// 파일 읽기와 쓰기를 위한 BufferedReader와 BufferedWriter 인스턴스 생성
try (BufferedReader reader = new BufferedReader(new FileReader("input.txt"));
BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"))) {
// 파일에서 한 줄씩 읽어오고, BufferedWriter를 통해 출력 파일에 쓰기
String line;
while ((line = reader.readLine()) != null) {
writer.write(line);
writer.newLine(); // 새로운 줄로 이동
}
System.out.println("파일이 성공적으로 복사되었습니다.");
} catch (IOException e) {
System.err.println("파일을 읽거나 쓰는 중 오류가 발생했습니다: " + e.getMessage());
}
}
}
'JAVA' 카테고리의 다른 글
콘솔이외의 다른 입출력대상으로, setOut(), setErr(), setIn() (0) | 2024.04.11 |
---|---|
바이트를 문자기반 스트림으로 InputStreamReader와 OutputStreamWriter, 인코딩을 변환하는 getEncoding() (0) | 2024.04.11 |
문자열 데이터를 읽고 쓰는 데 사용되는 클래스, StringReader와 StringWriter (0) | 2024.04.11 |
한 스레드에서 생성한 데이터를 다른 스레드에서 읽을 수 있는 PipeReader와 PippedWriter (0) | 2024.04.11 |
파일로부터 텍스트 데이터를 읽고, 파일에 쓰다 FileReader와 FileWriter (0) | 2024.04.11 |