[Java] I/O - 사용자가 입력한 내용을 그대로 파일로 저장하기/Reader

고동이의 IT·2021년 11월 15일
0

Java

목록 보기
27/37
post-thumbnail

Reader: 문자 기반 입력 스트림의 최상위 클래스

  • FileReader, BufferedReader, InputStreamReader 클래스는 모두 Reader클래스를 상속 받는다.

    InputStreamReader: 입력용 바이트 기반의 스트림을 문자기반의 스트림으로 변환하는 보조스트림이다.

    FileReader: 문자 기반 스트림 / 텍스트 파일을 프로그램으로 읽어들일 때 사용. 문자 단위로 읽으므로 텍스트만 읽을 수 있다.

    System.in : 콘솔(표준입출력장치)의 입력장치용 스트림객체

public class FileIOTest04 {

	public static void main(String[] args) {
		// 사용자가 입력한 내용을 그대로 파일로 저장하기
		
		try {
			// System.in : 콘솔(표준입출력장치)의 입력장치용 스트림객체
			// InputStreamReader: 입력용 바이트 기반의 스트림을 문자기반의 스트림으로 변환하는 
            				      보조스트림이다.
			InputStreamReader isr = new InputStreamReader(System.in);
			
			// 파일 출력용 문자기반 스트림 객체 생성  - 사용자가 입력할 내용을 
                					       저장할 파일생성
			FileWriter fw = new FileWriter("d:/d_other/testChar.txt");
			
			System.out.println("아무내용이나 입력하세요(입력의 끝은 Ctrl + Z 입니다.");
			
			int c;
			
			//콘솔에서 데이터를 입력할 때 입력의 끝은 Ctrl+Z 키를 누르면 된다.
			while((c=isr.read())!=-1){
				fw.write(c); //콘솔로 입력한 데이터를 파일로 출력한다.
				
			}
			
			isr.close();
			fw.close();
			
		} catch (IOException e) {
			// TODO: handle exception
		}

	}

}
profile
삐약..뺙뺙

0개의 댓글