자라나라 개발머리

[JAVA 11] EOF 처리 방법 (Scanner, BufferedReader) 본문

Java

[JAVA 11] EOF 처리 방법 (Scanner, BufferedReader)

iammindy 2022. 8. 8. 19:50

EOF: End Of File, 데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타낸다.

 

입력 방식마다 EOF처리 방식이 다르다.

일반적으로 쓰이는 Scanner, BufferedReader의 EOF처리 방식을 알아보자.

 

1.Scanner

Scanner sc = new Scanner(System.in);

//문자열 입력
while(sc.hasNextLine()) {
	sc.nextLine();
}

//숫자 입력
while(sc.hasNextInt()) {
	sc.nextInt();
}

hasNextLine(), hasNextInt() 메소드 실행 시

true가 리턴되면 다음 라인/숫자가 출력되고

false가 리턴되면 파일의 끝이라는 의미로 while문을 벗어난다.

 

 

2. BufferedReader

BufferedReader br = new BufferedReader(new InputStreamReader(System.in);

String input = "";

while((input = br.readLine()) != null) {
	
}

input이 null일 경우 while문 벗어남.