카테고리 없음
[TIL] 2022년 9월 27일 화요일
술
2022. 9. 27. 22:54
- '\r' 캐리지 리턴으로 커서를 현재 라인의 첫 번째 칼럼으로 이동
- '\n' 다음줄로 이동하는 줄바꿈
- 엔터를 클릭하면 '\r', '\n' 두 개의 특수문자로 간주하여 다음줄의 첫 번째 칼럼으로 이동
- 윈도우는 Ctrl + Z, 유닉스와 매킨토시는 Ctrl + d를 누르면 EOF, 입력의 끝으로 인식한다고 했는데 실제로 해보니 Ctrl + Z를 누르면 아래와 같이 조금 다름
- 위 예제에서도 hello를 입력하고 Enter키를 입력하면 결과가 나온 다음 개행문자인 \r, \n이 출력되어 다음줄의 첫 번째 칼럼으로 이동 → System.in에 BufferedReader를 이용하여 라인단위로 입력받는 readLine()을 이용
- BufferedReader와 readLine()을 이용하도록 예제를 수정
더보기
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class StandardIOEx {
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while (true){
String input = br.readLine();
for(int i=0; i<input.length(); i++){
System.out.println("input: " + Character.getNumericValue(input.charAt(i)) + ", (char)input: " + input.charAt(i));
}
}
}catch (IOException e){
e.printStackTrace();
}
}
}
- BufferedReader와 readLine()을 이용한 경우 종료했을 때 결과값이 조금 다름. Ctrl + D의 경우 문자열로 input을 받았으나 실제로 입력된 것이 없어 for문 안에 input.length()가 null이라 오류가 났고, Ctrl + Z 는 아까와 동일하게 종료함