자바
입력 스트림
devjones
2020. 9. 6. 15:14
다음은 InputStream 클래스의 객체인 System.in에 InputStreamReader 클래스의 객체를 연결하여 키보드로부터 문자열을 입력받는 예제이다.
package ch01;
import java.io.IOException;
import java.io.InputStreamReader;
public class InputStreamReaderTest {
public static void main(String[] args) {
InputStreamReader in = new InputStreamReader(System.in);
try {
while(true) {
int i = in.read();
char myChar = (char)i;
System.out.print(myChar);
}
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
다음은 FileReader 클래스로 하드 디스크에 저장된 파일의 내용을 읽어서 출력하는 예제이다.
package ch01;
import java.io.FileReader;
import java.io.IOException;
public class FileReaderTest {
public static void main(String[] args) {
int i;
try {
FileReader in = new FileReader("FileReaderTest.java");
while((i = in.read()) != -1) {
char myChar = (char)i;
System.out.print(myChar);
}
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
※ BufferedReader 클래스를 생성할 때 InputStreamReader 클래스의 객체를 인수로 주면, 버퍼를 사용하면서 캐릭터 단위로 데이터를 읽는 스트림이 생성된다.
다음은 BufferedReader 클래스로 키보드로부터 문자열을 읽는 예제이다.
package ch01;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class BufferedReaderTest {
public static void main(String[] args) {
InputStreamReader isReader = new InputStreamReader(System.in);
BufferedReader in = new BufferedReader(isReader);
try {
System.out.println("글씨를 입력하시면 따라 합니다.");
String str = in.readLine();
System.out.println(str);
} catch (Exception e) {
System.out.println(e.toString());
}
}
}