The Debugging Chronicles : "코드의 미학"

Mentor JAVA - section19. 파일 입출력 본문

JAVA/Mentor JAVA

Mentor JAVA - section19. 파일 입출력

sweetseonah1004 2024. 7. 30. 17:17

01 자바 입출력과 스트림

프로그램으로 들어오는 모든 값을 Input

출력되는 값을 Output

이를 입출력 (I/O)

 

데이터란? 

자바 프로그램에서 처리할 수 있는 모든 데이터를 의미

 

 

 

스트림  Stream  또는 가상 통로

자바 프로그램밍 디스크에 접근해 데이터를 주고 받는 작업을 도와주는 통로

 

1 입출력 스트림의 특징

자바에서는입출력을위한입력스트림(InputStream)과출력스트림(OutputStream)이있습니다. 프로
그램을기준으로데이터가들어오면입력스트림이며데이터가나가면출력스트림입니다.

02 입출력 스트림의 종류

 

바이트 기반 스트림 문자 기반 스트림
-Byte 단위로 파일을 읽고 출력할 때 사용
- 모든 타입의 데이터 가능
-문자 단위로 파일을 읽고 출력할 때 사용
-문자 데이터만 가능

 

03 바이트 기반 스트림

 

inputStream : 바이트 입력 스트림

바이트기반의입력스트림은최상위클래스로InputStream 객체가제공됩니다. 해당객체를상속해다 양한입력스트림들이존재

 

FileinputStream

FileinputStream은파일에서바이트단위로자료를읽어들일때사용하는스트림입니다

 

outputStream

바이트기반의출력스트림은최상위클래스로OutputStream객체가제공

 

fileOutput Stream

파일을 쓸 때 기존 파일명이 존재하는 경우가 있습니다. 이때 해당파일의 내용을 유지한 채 이어쓰거나 기존의 내용을 무시하고 새롭게 파일을 생성할 수 있습니다.

04 문자 기반 스트림

reader : 문자 입력 스트림

문자 기반의 입력 스트림은 최상위 클래스인 Reader를 상속해 다야한 클래스를 제공

 

writer 문자 출력 스트림

 

FIleWriter 선언

05 보조 스트림

파일 및 폴더에 대한 정보들을 파악하기 위한 메서드들로 구성되어 있으며

물리적으로 저장되어 있는 파일이나 폴더를 다루기 위해 다양한 메서드들이 있음

06 File 클래스

자바 패키지에서 제공하는 File클래스는 파일 및 폴더에 대한 경로 명, 파일 크기, 타입, 날짜 등의 속성 정보를 제공하고 파일 생성 , 삭제, 이름 변경 등 파일 관리 작업을 지원힉 위한 메서드로 구성

07 직렬화

자바 시스템 내부에서 사용하는 객체나 데이터를 외부의 시스템에서 사용할 수 있도록

바이트 단위의 데이터로 변환시키는 기술과 바이트로 변환된 데이터를 다시 객체로 변환하는 기술

객체를 데이터로 변환하는 것을 직렬화,

데이터화 된 것을 다시 객체로 변환하는 것을 역직렬화 라고 함