본문 바로가기
JAVA/자바와 데이터 다루기

파일 쓰기/읽기

by DEVLIB 2025. 4. 13.
728x90

자바의 기본 파일 입출력 클래스

기능 주요 클래스
파일 쓰기 FileWriter, BufferedWriter, PrintWriter
파일 읽기 FileReader, BufferedReader, Scanner
파일 경로 File

1. 파일에 쓰기 (FileWriter, BufferedWriter)

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class FileWriteExample {
    public static void main(String[] args) {
        try {
            BufferedWriter bw = new BufferedWriter(new FileWriter("output.txt"));
            bw.write("Hello, Java 파일 쓰기!");
            bw.newLine();  // 줄바꿈
            bw.write("두 번째 줄입니다.");
            bw.close();
            System.out.println("파일 쓰기 완료");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

 

output.txt 파일이 생성되고, 내용이 기록됩니다.


2. 파일에서 읽기 (BufferedReader)

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class FileReadExample {
    public static void main(String[] args) {
        try {
            BufferedReader br = new BufferedReader(new FileReader("output.txt"));
            String line;
            while ((line = br.readLine()) != null) {
                System.out.println("📄 " + line);
            }
            br.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

한 줄씩 읽고 출력 결과 예시

 
Hello, Java 파일 쓰기!
두 번째 줄입니다.

 


파일 덮어쓰기 vs 추가쓰기

모드 코드 예시
덮어쓰기(기본) new FileWriter("file.txt")
추가쓰기 new FileWriter("file.txt", true)

예외 처리: try-catch, IOException

  • 파일 입출력은 언제든 오류가 발생할 수 있어 예외 처리가 필수입니다.
  • 가장 자주 사용하는 예외: IOException

실습 아이디어

  • 사용자 입력을 받아 .txt에 저장
  • 학생 정보 목록을 파일로 저장하고 다시 불러오기
  • RPG 캐릭터 상태를 저장했다가 다시 불러오기

마무리 요약


기능 클래스 설명
쓰기 FileWriter, BufferedWriter 텍스트 파일에 문자열 기록
읽기 FileReader, BufferedReader 텍스트 파일에서 한 줄씩 읽기
한 줄 입력 readLine() 줄 단위로 읽음
줄바꿈 newLine() 다음 줄로 이동
경로 상대/절대 경로 모두 가능 "data/info.txt"
LIST