JAVA 프로그래밍

[JAVA] 풀스택 개발자 부트캠프 008일차 ① 파일 생성, 쓰기, 읽기

selfdailycoding 2025. 1. 3. 11:11

파일명을 입력받아 작성하고
파일에 회원 ?명을 입력받아 작성(쓰기)한다.
파일로부터 모든 회원을 읽어들여 String 배열에 저장한다.


import java.io.*;
import java.util.Scanner;

public class MainClass {

    public static void main(String[] args) throws IOException {

        Scanner sc = new Scanner(System.in);

        System.out.print("저장할 파일명을 입력하세요. >> ");
        String filename = sc.next();

        
        // 파일 생성
        File file = new File("C:\\Users\\mnew0\\" + filename +".txt");
        if(file.createNewFile()) {
            System.out.println(filename + "(으)로 파일이 생성되었습니다.");
        }else {
            System.out.println(filename + " 파일이 이미 존재합니다.");
        }


        // 파일 쓰기
        System.out.print("회원 수를 입력하세요. >> ");
        int count = sc.nextInt();

        String[] names = new String[count];

        for(int i = 0 ; i < names.length ; i++ ){
            System.out.print( (i+1) + "번째 회원 이름을 입력하세요. >> ");
            names[i] = sc.next();
        }

        FileWriter fw = new FileWriter(file);
        BufferedWriter bw = new BufferedWriter(fw); // buffer:저장공간
        PrintWriter pw = new PrintWriter(bw);

        for (String name : names) {
            pw.println(name);
        }
        pw.close();


        // 파일 읽기
        BufferedReader br = new BufferedReader(new FileReader(file));

        String str = "";
        String[] getNames = new String[names.length];
        int len = 0;
        while((str = br.readLine()) != null){
            getNames[len] = str;
            len++;
        }
        br.close();

    }
}