기록하는 중/JAVA
[Java] FileChannel 클래스 - java.nio
성장하는 요롱이
2024. 1. 9. 01:27
FileChannel 클래스
- java.io 패키지의 파일 관련 입출력 스트림을 대체
- java.nio.channels 패키지에 존재
- 파일에 대한 읽기와 쓰기를 모두 제공
- 멀티 스레드 환경에서도 안전하게 사용할 수 있응ㅁ
- 읽기와 쓰기 메소드
- int read(ByteBuffer dst), int write(ByteBuffer src)
FileChannel 객체의 생성 방법
- FileChannel.open(Path path, OpenOption ... options)
- FileInputStream 이나 RandomAccessFile 객체에서 getChannel( )
- FileChannel 객체의 생성에 사용되는 옵션 값
StandardOpenOption값 | 의 미 |
READ | 읽기용으로 파일을 연다. |
WRITE | 쓰기용으로 파일을 연다. |
CREATE | 쓰기용으로 파일을 여는데, 없다면 생성 |
CREATE_NEW | 새 파일을 생성 이미 파일이 있으면 생성되지 않음 |
APPEND | WRITE와 함꼐 사용되어 기존 파일에 내용을 추가 |
DELETE_ON_CLOSE | 채널을 닫을 때 해당 파일이 삭제 |
TRUNCATE_EXISTING | WRITE와 함께 사용되어 기존 파일의 크기를 0으로 만듬 |