입출력 (IO)

DONI·2021년 10월 9일
0

Java

목록 보기
44/46
post-thumbnail

🏹 입출력 (IO)

Input과 Output의 약자로, 컴퓨터 내/외부 장치와 프로그램 간의 데이터를 주고 받는 것
입출력 데이터를 처리할 공통적인 방법으로 스트림을 사용한다.

  🌼 스트림 (Stream) : 서로 다른 프로그램 또는 장치 간의 데이터가 이동하는 통로 (단방향)


🏹 File 클래스

파일 또는 폴더를 다룰 수 있는 자바 제공 클래스
  ✔ 절대경로 → File f1 = new File("C:/dev/test1.txt");
  ✔ 상대경로 → File f1 = new File("test1.txt");

  • createNewFile( ) : 파일 생성 메서드 (성공 시 true, 실패 시 false 반환)

🏹 Stream 클래스

입출력 장치에서 데이터를 읽고 쓰기 위해 자바에서 제공하는 클래스 (단방향)
하나의 스트림으로 입출력을 동시에 수행할 수 없으므로 2개의 스트림이 필요하다.

  • 바이트 기반 스트림 (1byte)
  • 문자 기반 스트림 (2byte)

🏹 FileInputStream

파일에 작성된 내용을 1byte씩 입력 받는 InputStream의 하위 클래스

만약 파일이 존재하지 않으면 FileNotFoundException 예외 발생 → 예외처리 필수
FileInputStream("C:/dev/test.txt");

  • read( ) : 입력 스트림으로부터 1byte씩 읽어오는 메서드
               더 이상 읽어올 데이터가 없으면 -1 반환

  • close( ) : 사용한 시스템 자원을 반환 후 입력 스트림을 닫음

🏹 FileReader

파일에 작성된 내용을 문자(2byte) 단위로 읽어오는 Reader의 하위 클래스


🏹 FileOutputStream

파일을 1byte 단위로 저장할 때 사용하는 OutputStream의 하위 클래스
경로에 작성된 파일이 존재하지 않으면 자동으로 새 파일을 생성하며,
이미 파일이 존재하는 경우 덮어쓰기가 이루어지기 때문에
기존 파일에 이어서 계속 작성하고 싶다면 파일 경로 뒤에 true를 작성해준다.
FileOutputStream("C:/data/test.txt", true);

  • write( ) : 출력 스트림으로부터 1byte씩 내보내는 메서드

  • close( ) : 사용한 시스템 자원을 반환 후 출력 스트림을 닫음

🏹 FileWriter

파일을 문자(2byte) 단위로 저장할 때 사용하는 Writer의 하위 클래스

profile
틀린 내용이 있다면 댓글 또는 이메일로 알려주세요 ❤ꔛ❜

0개의 댓글