[JAVA] 정리/파일(file)

파일(file) - 11. 파일 쓰기 BufferedWriter

쎈코 2023. 2. 28. 00:17

FileOutputStream > FileWriter(전용) > BufferedWriter(범용)
FileInputStream  > FIleReader(전용) > BufferedReader(범용)

파일 쓰기BufferedWriter

try {
     BufferedWriter writer = new BufferedWriter(new FileWriter("C:\\class\\code\\java\\file\\data4.txt"));
     //기존에 있던 FileWriter를 한 번 더 감싼 것

     writer.write("안녕하세요.");
     writer.write("\r\n");
     writer.write("홍길동입니다.");
     writer.newLine();  //= \r\n 작성
     writer.write("반갑습니다.");

     writer.close();

     System.out.println("완료");
}catch(Exception e) {
     e.printStackTrace();
}

 

 

EX] 더미 데이터 만들기

 

private final static String SCORE = ".\\dat\\score.txt";


String[] names = { "김","이","박","최","정","현","민","유","재","신" };
     
 try {
       //. : 현재 프로그램이 있는 폴더
       //자바 콘솔 프로그램 > 현재 위치 > 프로젝트 폴더
       BufferedWriter writer = new BufferedWriter(new FileWriter(SCORE));
         
         for (int i=0; i<30; i++) {
            String name = "";
            name = names[(int)(Math.random() * names.length)]
                      + names[(int)(Math.random() * names.length)]
                      + names[(int)(Math.random() *names.length)];
            
            int kor = (int)(Math.random() * 61) + 40;
            int eng = (int)(Math.random() * 61) + 40;
            int math = (int)(Math.random() * 61) + 40;
            
            writer.write(String.format("%s,%d,%d,%d\r\n", name, kor, eng, math));
          }
            writer.close();
            System.out.println("더미 데이터 생성 완료!!!");
            
         } catch (Exception e) {
            e.printStackTrace();
         }