JAVA

2025.01.16 (목) 24일차 / File

동준1234 2025. 1. 16. 16:45

코딩을 할 때 파일을 사용하려고 불러와야 될 상황이 있습니다. 자바는 파일을 읽고 쓰는 다양한 방법을 제공하며 이를 통해 파일을 조작할 수 있습니다.

 

1. File : 파일을 다루기 위한 기본 클래스

- File 클래스는 파일과 디렉토리의 경로를 다루는 데 사용됩니다.

- 파일의 존재 여부를 확인, 파일 생성, 삭제, 이동하는 작업을 할 수 있습니다.

1-1. 주요 메소드

- exists() : 파일이 존재하는지 확인

- createNewFile() : 새로운 파일 생성

- delete() : 파일 삭제

- isDirectory() : 경로가 디렉토리인지 확인

메소드 예시

2. 기반 스트림과 보조 스트림

- 스트림 : 스트림은 데이터의 흐름을 의미하며, 프로그램과 데이터를 주고받는 통로 역할을 합니다. 데이터를 읽거나 쓸 때 사용되며 주로 파일, 네트워크 소켓, 메모리 등을 통해 데이터를 처리할 때 사용됩니다.

- 파일이나 네트워크와 같은 외부 자원과 연결되므로 예상치 못한 상황이 발생할 가능성이 높아서 try-catch 문으로 예외처를 꼭 해주어야 합니다.

 

2-1. 기반 스트림

- 데이터를 직접 읽거나 쓰는 역할만 수행합니다

ex) FileInputStream, FileOutputStream, FileReader, FileWriter

2-2. 보조 스트림

- 기본 스트림의 기능을 확장하거나 성능을 개선하기 위해 사용됩니다.

- 데이터를 버퍼링하거나 형식 변환 등의 추가 기능을 제공합니다.

ex) BufferedInputStream, BufferedReader, DataInputStream, ObjectOutputStream

스트림의 주요 클래스, 각 클래스별로 내장 메소드가 포함되어 있다.

3. 입출력 스트림

- 입력 스트림(Input Stream) : 외부 자원에서 데이터를 읽어오는 통로

ex) 파일에서 텍스트 읽기, 네트워크에서 데이터 받기

- 출력 스트림(Output Stream) : 데이터를 외부 자원으로 내보내는 통로

ex) 파일에 텍스트 쓰기, 네트워크로 데이터 보내기

 

3-1 입출력 스트림의 흐름

1. 파일을 열거나 스트림 객체 생성

2. 파일 쓰기 스트림의 흐름

3. 파일 읽기와 쓰기 (문자 스트림(BufferedStream) 사용)