BasicFileAttributes — 파일 시스템의 파일과 연관된 기본 속성
BasicFileAttributes — 파일 시스템의 파일과 연관된 기본 속성
BasicFileAttributes는 파일 시스템의 파일과 연관된 기본 속성(basic attributes)이에요. 기본 파일 속성은 많은 파일 시스템에 공통인 속성으로, 이 인터페이스가 정의하는 필수(mandatory) 및 선택(optional) 파일 속성으로 구성돼요.
본문
public interface BasicFileAttributes
파일 시스템의 파일과 연관된 기본 속성이에요. 기본 파일 속성은 많은 파일 시스템에 공통인 속성으로, 이 인터페이스가 정의하는 필수 및 선택 파일 속성으로 구성돼요. Java 1.7부터 사용할 수 있어요.
사용 예:
Path file = ...;
BasicFileAttributes attrs = Files.readAttributes(file, BasicFileAttributes.class);
알려진 하위 인터페이스
DosFileAttributes, PosixFileAttributes
메서드 요약
| 수식자와 타입 | 메서드 | 설명 |
|---|---|---|
FileTime |
creationTime() |
생성 시간을 반환해요. |
Object |
fileKey() |
주어진 파일을 고유하게 식별하는 객체를 반환하거나, 파일 키를 사용할 수 없으면 null을 반환해요. |
boolean |
isDirectory() |
파일이 디렉터리인지 여부를 알려줘요. |
boolean |
isOther() |
파일이 일반 파일, 디렉터리, 심볼릭 링크 외의 다른 것이인지 여부를 알려줘요. |
boolean |
isRegularFile() |
파일이 불투명한 내용을 가진 일반 파일인지 여부를 알려줘요. |
boolean |
isSymbolicLink() |
파일이 심볼릭 링크인지 여부를 알려줘요. |
FileTime |
lastAccessTime() |
마지막 접근 시간을 반환해요. |
FileTime |
lastModifiedTime() |
마지막 수정 시간을 반환해요. |
long |
size() |
파일 크기(바이트)를 반환해요. |
lastModifiedTime
FileTime lastModifiedTime() — 마지막 수정 시간을 반환해요. 파일 시스템 구현이 마지막 수정 시간을 나타내는 타임스탬프를 지원하지 않으면 구현별 기본값(보통 epoch인 1970-01-01T00:00:00Z를 나타내는 FileTime)을 반환해요.
lastAccessTime
FileTime lastAccessTime() — 마지막 접근 시간을 반환해요. 구현이 이를 지원하지 않으면 보통 last-modified-time 또는 epoch를 나타내는 FileTime인 구현별 기본값을 반환해요.
creationTime
FileTime creationTime() — 생성 시간을 반환해요. 애 구현이 지원하지 않으면 구현별 기본값을 반환해요.
isRegularFile / isDirectory / isSymbolicLink / isOther
각각 일반 파일, 디렉터리, 심볼릭 링크, 그 외 다른 것인지 여부를 반환해요.
size
long size() — 파일 크기를 바이트 단위로 반환해요. 압축, 스파스 파일 지원 등의 이유로 파일 시스템의 실제 크기와 다를 수 있어요. 일반 파일이 아닌 파일의 크기는 구현별로 정의되며 명시되지 않아요.
fileKey
Object fileKey() — 주어진 파일을 고유하게 식별하는 객체를 반환하거나, 사용할 수 없으면 null을 반환해요. 일부 플랫폼이나 파일 시스템에서는 식별자 또는 식별자 조합으로 파일을 고유하게 식별할 수 있어요. 예를 들어 UNIX 파일 시스템에서는 장치 ID와 inode가 이런 목적으로 흔히 사용돼요. 이 메서드가 반환하는 파일 키는 파일 시스템과 파일이 정적인 경우에만 고유함이 보장돼요.
참고: Files.walkFileTree(java.nio.file.Path, java.util.Set<java.nio.file.FileVisitOption>, int, java.nio.file.FileVisitor<? super java.nio.file.Path>)