IO 정리
IO 사용할때의 코딩 테크닉
1. 가장 윗단에 사용할 IO객체를 null로 선언한다. 이름을 앞글자만 줄여서 선언한다.
2. try-catch문을 연다.
3. try 안쪽에서 IO객체를 open한다.
4. 필요한 IO 작업을 수행한다. 보통 while문으로 처리한다.
5. finally를 선언하고 사용한 IO을 닫는다.
1. null선언
InputStream is = null;
OutputStream os = null;
2. try-catch문 (기본 형식)
try {
} catch (Exception e) {
e.printStackTrace();
}finally {
}
3. try 안쪽에서 open
is = System.in; * open 대체하는 코드, 콘솔 입력
os = System.out; * 콘솔 출력
finally 선언후 IO닫기
is.close();
os.close();
입력시 오류를 클릭해 다시 try 처리 필요
} finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
os.close();
} catch (IOException e) {
e.printStackTrace();
}
os를 강제로 출력하는 방법 2가지
1. flush 사용 : 중간에 반드시 강제로 데이터를 밀어내야할데 명시적으로 쓰는 문법 2. close 사용 : 자원 정리할때 사용함으로 필요시 flush 사용 필요
ex) 숫자형 데이터 (1byte)
InputStream is = null;
OutputStream os = null;
try {
is = System.in;
os = System.out;
System.out.println("숫자를 입력해주세요.");
int read = is.read();
os.write(read);
//os.flush();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
os.close();
} catch (IOException e) {
e.printStackTrace();
}
}
ex) 문자형 데이터 (2byte)
InputStreamReader isr = null;
OutputStreamWriter osw = null;
try {
isr = new InputStreamReader(System.in); *문자열 Stream -> reader 처리
osw = new OutputStreamWriter(System.out);
osw.append("문자열을 입력해주세요.\n"); *append -> write와 같은 기능
osw.flush();
char[] temp = new char[1024];
int size = isr.read(temp);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
isr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Author And Source
이 문제에 관하여(IO 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@bh0117/IO-정리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)