java.nio package

그로밋·2023년 6월 14일
0

java

목록 보기
5/5

NIO는 New Input Ouput의 약자로 기존 java.io 패키지를 개선한 새로운 입출력 패키지이다. 대표적으로 inputStream과 outputStream을 합쳐놓은 듯이 입력과 출력이 모두 가능한 FileChannel 클래스가 있다.

1. Path Interface

  • 해당 인터페이스는 java.io.File 클래스를 대신한다. 위치는 java.nio.file 패키지에 존재한다.
  • 기본적인 기능으로 파일시스템에 존재하는 파일이나 디렉터리에 해당하는 경로를 표현한다.
  • 이 외에도 경로 생성, 비교, 정보 추출, 경로 요소 조작등의 기능들을 제공한다.
  • 객체 생성 방법

2. FileSystem Class, FileStore Class


3. Files Class


4. Buffer Class(abstract class)

버퍼의 생성 방법

버퍼의 속성

버퍼 클래스의 메소드

  • Buffer mark() : position 값으로 mark 설정
  • Buffer reset() : mark 값으로 position 설정
  • Buffer rewind() : position을 0으로 바꾸고 mark 삭제
  • Buffer flip() : position 값으로 limit 설정 후 position -> 0
  • Buffer clear() : 초기화. 새로운 쓰기 준비

버퍼 읽기와 쓰기

5. FileChannel Class






while 문 마지막에 butter.clear() 해주는 이유는 버퍼의 크기가 파일의 크기보다 작을 수 있으니까 버퍼를 비워주고 다시 받기 위함.

6. Watchservice Interface




7. AsynchronousFileChannel Class

AsynchronousFileChannel 클래스를 이용하면 논-블로킹 방식 입출력을 지원하여 read(), write() 작업이 완료되지 않더라도 다른 작업을 동시에 수행할 수 있다.

profile
Work as though your strength were limitless. <S. Bernhardt>

0개의 댓글