JAVA/JAVA

Java | I/O RandomAccessFile

pathas 2020. 2. 11. 17:10

RandomAccessFile

입출력 클래스 중 유일하게 파일 입출력을 동시에 할 수 있는 클래스

  • 임의의 위치로 이동하여 자료를 읽거나 쓸 수 있음
  • File Pointer: 현재 파일의 어느 위치에서 읽고 쓰는지 그 위치를 가르키는 속성
    파일 포인터의 위치가 자료를 읽거나 쓰는 위치이므로
    파일 포인터 위치를 잘 생각해서 구현해야 함
  • 스트림을 생성하지 않고 간단하게 파일에 자료를 읽거나 쓸 때 사용하면 유용

RandomAccessFile 생성자

생성자 설명
RandomAccessFile(File file, String mode) 읽고 쓸 대상인 file 객체를 지정하고
mode로 읽기 전용(r) 및 읽고 쓰기(rw)를 지정할 수 있음
RandomAccessFile(String file, String mode) 위의 생성자와 기능은 동일하며 file 객체 대신
파일의 경로를 문자열로 전달 받음

RandomAccessFile Method

메소드 설명
long getFilePointer() 현재 파일에서의 파일 포인터 위치를 반환 함
void writeBytes(String s) 파일에 s 문자열을 작성함

입출력 클래스 중 유일하게 입력과 출력을 동시에 할 수 있는 RandomAccessFile에 대해 간략히 알아보았습니다.

이전 글인 [Thread (3) 동기화] 예제에 나왔는데 설명된 적이 없는 것 같아서 간단히 포스팅하였습니다.

입출력을 동시에 할 수 있는 것도 중요한 특징이지만

파일 포인터로 현재 파일에 읽고 쓰는 위치를 확인할 수 있다는 점도 기억해야겠습니다.