컴퓨터공학 💻 도서관📚

Part2. 6-15 문자 단위 입출력 스트림 본문

✅🌲강의 복습 노트/패캠 JavaSpring 강의,코드 복습

Part2. 6-15 문자 단위 입출력 스트림

들판속초록풀 2025. 8. 29. 13:01

뒤에 Reader 나 Writer 가 붙은 애들은 문자를 핸들링하는 스트림이다.

Reader

  • 문자 단위 입력 스트림 최상위 추상 클래스
  • 많은 추상 메서드가 선언되어 있고 이를 하위 스트림이 상속받아 구현함
  • 주요 하위 클래스

InputStreamReader :  System.in 을 감싸서 System.in 에서 바이트 단위로 읽은 거를 문자로 바꿔주는 보조 스트림

BufferedReader :  버퍼링이 내부적으로 제공이 돼서 읽을때 속도가 빨라지는 스트림이다.

 

 

  • 주요 메서드

FileReader

  • 파일에서 문자 읽기
public class FileReaderTest {

	public static void main(String[] args) {

		try(FileReader fr = new FileReader("reader.txt")){
			int i;
			while( (i = fr.read()) != -1){
				System.out.print((char)i);
			}
		}catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 


Writer

  • 문자 단위 출력 스트림 최상위 추상 클래스
  • 많은 추상 메서드가 선언되어 있고 이를 하위 스트림이 상속받아 구현함
  • 주요 하위 클래스

  • 주요 메서드

FileWriter

  • 파일 문자 쓰기
public class FileWriterTest {

	public static void main(String[] args) {

		try(FileWriter fw = new FileWriter("writer.txt")){
			fw.write('A');    // 문자 하나 출력
			char buf[] = {'B','C','D','E','F','G'};
			
			fw.write(buf); //문자 배열 출력
			fw.write("안녕하세요. 잘 써지네요"); //String 출력
			fw.write(buf, 1, 2); //문자 배열의 일부 출력
			fw.write("65");  //숫자를 그대로 출력
		}catch(IOException e) {
			e.printStackTrace();
		}
		
		System.out.println("출력이 완료되었습니다.");
	}
}
Comments