[Java] 파일 입출력

Ogu·2022년 9월 3일

파일 쓰기

FileWriter

// 		FileWriter
        FileWriter fw = new FileWriter("./memo_13_2.txt");
        String memo = "헤드 라인\n";
        fw.write(memo);

        memo = "1월 1일 날씨 맑음\n";
        fw.write(memo);

        fw.close();

PrintWriter

//      PrintWriter
        PrintWriter pw = new PrintWriter("./memo_13_2.txt");
        memo = "헤드 라인";
        pw.println(memo);   // 자동으로 줄바꿈 추가

        memo = "1월 1일 날씨 맑음";
        pw.println(memo);

        pw.close();

파일 이어 쓰기

FileWriter로 이어쓰기

//        FileWriter로 이어쓰기
        FileWriter fw2 = new FileWriter("./memo_13_2.txt", true);

        memo = "1월 2 날씨 완전 맑음\n";
        fw2.write(memo);
        fw2.close();

PrintWriter로 이어쓰기

FileWriter를 만들어서 안에 넣어준다.

//        PrintWriter로 이어쓰기 - FileWriter를 만들어서 안에 넣어준다
        PrintWriter pw2 = new PrintWriter(new FileWriter("./memo_13_2.txt", true));

        memo = "1월 3 날씨 또 맑음!\n";
        pw2.println(memo);
        pw2.close();

파일 읽기

BufferedReader br = new BufferedReader(new FileReader("./memo_13_2.txt"));

        while(true) {
            String line = br.readLine();

            if(line==null) {
                break;
            }
            System.out.println(line);
        }
        br.close();

파일입출력 예제

package Java_13_2;
// Practice
// JamesArthurGosling.txt 파일을 읽은 후 원하는 단어 변경하여 새로 저장해보자.

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

public class Practice {
    public static void main(String[] args) throws IOException {
        String inputFile = "JamesArthurGosling.txt";
        String outputFile = "./JamesArthurGosling_edit.txt";

        // 찾을 단어 / 변경 단어 입력 받기
        System.out.print("찾을 단어: ");
        Scanner sc = new Scanner(System.in);
        String find = sc.nextLine();
        System.out.print("변경 단어: ");
        String to = sc.nextLine();


        // 파일 읽기, 변경 및 저장
        BufferedReader br = new BufferedReader(new FileReader(inputFile));
        FileWriter fw = new FileWriter(outputFile);

        while (true) {
            String line = br.readLine();
            if (line == null)
                break;

            String newLine = line.replace(find, to);
            fw.write(newLine + '\n');

        }

        br.close();
        fw.close();


    }
}
profile
Hello! I am Ogu, a developer who loves learning and sharing! 🐤🐤 <br> こんにちは!学ぶことと共有することが好きな開発者のOguです!🐤

0개의 댓글