말 그대로 파일이라는 개념을 추상화한 클래스이다. 파일에 대한 입력과 출력은 스트림을 사용하여 수행한다.
파일 클래스에 별도의 입출력 기능은 없지만, 파일 자체의 경로나 정보를 알 수 있고, 파일을 생성할 수도 있다.
주요 생성자
File(String pathname) | pathname을 매개변수로 받아 파일 생성 |
메서드
boolean createNewFile() | pathname으로 생성된 File 객체를 실제 파일로 생성 파일이 성공적으로 생성되면 true 반환 동일한 파일명의 파일이 있는 경우 false 반환 |
boolean isFile() | 해당 파일이 정상적인 파일인 경우에 true 반환 |
boolean isDirectory() | 해당 파일이 정상적인 폴더인 경우 true 반환 |
String getName() | 해당 파일 또는 폴더의 이름을 반환 |
String getAbsolutePath() | 파일 또는 폴더의 절대 경로 반환 |
String getPath() | 파일 또는 폴더 경로를 문자열로 반환 파일 객체가 생성될 때 매개변수로 받은 path가 반환됨 |
boolean canRead() | 해당 파일을 읽을 수 있는 경우에 true 반환 |
boolean canWrite() | 해당 파일에 쓸 수 있는 경우에 true 반환 |
delete() | 파일 또는 폴더를 제거하고 성공적으로 제거된 경우 true 반환 |
RandomAccessFile 클래스
파일 입출력을 동시에 할 수 있는 클래스이다.
파일에 대해 임의 접근을 위해서 파일 포인터의 개념을 제공하고 있다. 지금까지는 처음부터 차례로 읽었지만, 임의의 위치로 이동하여 자료를 읽을 수 있다.
파일 포인터는 파일 안에서의 현재 위치를 나타내며 파일 생성 시 초기 위치 값은 0이다.
파일을 읽거나 쓰게 되면 파일 포인터는 위치를 변경하게 되며, 이 파일포인터를 명시적으로 지정된 위치로 이동시키거나 위치를 찾는 등의메소드를 제공하고 있다.
- void seek(long pos): 지정된 바이트 수 바로 위치에 파일 포인터를 위치시킨다.
- long getFilePointer(): 현재 파일 포인터의 위치를 얻는다.
- long length(): 파일의 전체 크기를 얻는다.
'공부 STUDY > JAVA' 카테고리의 다른 글
[JAVA] 자바의 정석 연습문제 5장 배열 [5-4] (0) | 2023.02.25 |
---|---|
[JAVA] Assertions.assertThat 비교 하기 (0) | 2023.01.25 |
[JAVA] 직렬화 (Serialization ), 역직렬화 (Deserialization) (0) | 2023.01.24 |
[JAVA] 보조 스트림(Wrapper 스트림)에 대해 알아보자 |FIilterInputStream, FilterOutputStream (0) | 2023.01.24 |
[JAVA] 자바 입출력과 스트림 - (4) | 문자 단위 스트림 (0) | 2023.01.24 |