[Java] EOF : End Of File

SEOP·2024년 6월 11일
0
post-thumbnail

End Of File란?

데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타내는 용어이다.

EOF 적용 방법

1. Scanner

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
    
        Scanner scanner = new Scanner(System.in);
        
        while(scanner.hasNext()) {
            System.out.println(scanner.nextLine());
        }
    }
}

Scanner 클래스는 hasNext()를 이용하면 된다는데
IntelliJ에서는 EOF를 찾지 못해 프로그램이 끝나지 않는다고 한다.
나도 IntelliJ에서 계속 시도해봤는데 안되길래 의아했다.

2. BufferedReader

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        String s = "";
        while((s = br.readLine()) != null){
            if(s.isEmpty()){
                break;
            }
            bw.write(s);
        }
        bw.flush();
        bw.close();
    }
}

입력에 빈칸 즉, null이 들어오면
while반복문을 끝낸 뒤, 출력까지 끝내도록 코드를 작성했다.

참고 : https://steady-coding.tistory.com/227
참고 : https://gre-eny.tistory.com/307

profile
응애 나 애기 개발자

0개의 댓글