Java.io
읽고 쓸 수 있는 클래스들은 크게 두 가지로 나뉘어지는데, 바이트 단위로 읽고 쓸수 있는 ‘바이트 스트림 클래스’와 문자 단위로 읽고 쓸 수 있는 ‘문자 스트림 클래스’로 나뉜다.
처음의 자바는 바이트 단위로 읽고 쓸 수 있는 바이트 스트림 클래스만 존재했지만, 2바이트 문화권인 한국, 일본, 중국 등의 영향으로 문자 스트림 클래스가 추후에 추가됐다. 이는 한글을 입출력하는 프로그램의 경우 문자 스트림 클래스를 사용하는 것이 유리하다는 것을 의미한다.
- 자바 IO에서 제공되는 클래스의 일부, 실제로는 훨씬 많은 IO 클래스가 제공된다.
클래스명에 사용되는 단어들은 각각 중요한 의미가 있는데, 해당 단어를 보고 어떤 기능의 IO 객체인지 쉽게 짐작할 수 있다.
06 생성자가 중요한 자바 IO 관련 클래스
자바 IO 패키지는 상당히 많은 수의 클래스로 구성되어 있는데, 이러한 클래스를 잘 사용하려면
- 첫째, 앞서 설명한 클래스명을 구성하는 단어들의 의미를 잘 알고 있어야 한다.
- 둘째, 자바IO 패키지 클래스의 생성자 의미를 잘 알고 있어야 한다. 자바 IO와 관련된 클래스의 생성자는 인자로 읽어 들일 대상, 혹은 출력해야 할 대상을 지정하는데 사용하기 때문이다.
예를 들어 파일 IO 클래스는 파일명이나 파일 관련 클래스를 인자로 받아들여 해당 파일로부터 읽거나 쓰는 동작을 하게 된다. 즉, “어디로부터 읽어 들일 것인가?” 또는 “어떤 곳에 출력할 것인가?”를 잘 하려면 생성자를 잘봐야 한다는 것을 의미 한다.
07 자바IO 프로그래밍을 잘하려면
자바IO 프로그래밍을 잘하려면 자바 API를 한번쯤 꼭 읽어볼 필요가 있다. 그래야만 어떤 클래스에 어떤 메소드가 있는지 알 수 있기 때문이다.
public class BufferedReaderTest
{
public static void main(String[] args) throws Exception
{
InputStreamReader isr = InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
String line = br.readLine();
System.out.println("키보드로 부터 입력 받은 문자열 : " + line);
}
}
출처 : 김성박 송지훈 공저, 『 자바 IO & NIO 네트워크 프로그래밍』, 한빛미디어(2004.9.30), 3장 인용.