BE/Java

[JAVA] EOF(End of File) 처리 방법

멍목 2021. 2. 23. 22:10
반응형

EOF란(End of File)? 파일의 끝. 즉 더 이상 읽을 데이터가 없는 것을 나타내는 단어입니다.

예로, 알고리즘 문제에서 랜덤으로 주어지는 입력데이터를 EOF로 문제를 해결할 수 있습니다.

 

자바에서 사용하는 Scanner와 BufferedReader클래스로 EOF 처리 방법을 알아보겠습니다.

 

 


 

1. Scanner 클래스를 이용한 EOF 처리 방법

Scanner sc = new Scanner(System.in);

// 입력데이터를 문자열로 받으며 EOF를 체크
while(sc.hasNextLine()) {			// EOF인 경우 hasNextLine()이 false로 반복문을 빠져나옴
	String str1 = sc.nextLine();
    ...
}

// 입력데이터를 숫자로 받으며 EOF를 체크
while(sc.hasNextInt()) {			// EOF인 경우 hasNextInt()이 false로 반복문을 빠져나옴
	int num1 = sc.nextInt();
}

 

 

2. BufferedReader 클래스를 이용한 EOF 처리 방법

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = "";

// str 변수에 readLine()으로 저장, EOF라면 null값이 저장되었을거고 반복문을 빠져나옴
while( (str=br.readLine()) != null ) {
	...
}

 

반응형