-
[NIO.2]Basic File AttributesJAVA/NIO2 2013. 12. 10. 17:08728x90
이전에 언급 되었듯, 파일의 기본 속성을 읽는 것은 Files.readAttributes Method를 통해 대부분 모든 속성 정보를 읽을수 있다.
이 방법 보다. 더 능률적인 파일 시스템에 대한 접근은 각각의 속성에 접근 하는 것이다.
LinkOption enum, NOFOLLOW_LINKS 인자를 현재 지원 한다.
위 옵션은 심볼릭 링크를 따라가지를 원치 않을 경우 사용 한다.
time stamps 에 대하여 : 기본 뷰는 3가지 시간을 설정 한다.
- creationTime, lastModifiedTime, lastAccessTime
위 시간에 대하여 지원 하지 않을 경우 구현고유의 값을 전달 하며, 지원 할 경우 FileTime object를 전달 합니다.
BasicFileAttribute 를 이용한 파일 정보 호출
Path file = Paths.get("/Temp/4.gif"); BasicFileAttributes attr = Files.readAttributes(file, BasicFileAttributes.class); System.out.println("creationTime: " + attr.creationTime()); System.out.println("lastAccessTime: " + attr.lastAccessTime()); System.out.println("lastModifiedTime: " + attr.lastModifiedTime()); System.out.println("isDirectory: " + attr.isDirectory()); System.out.println("isOther: " + attr.isOther()); System.out.println("isRegularFile: " + attr.isRegularFile()); System.out.println("isSymbolicLink: " + attr.isSymbolicLink()); System.out.println("size: " + attr.size());
결과 :
creationTime: 2013-08-30T00:55:29.131666Z
lastAccessTime: 2013-08-30T00:55:29.181669Z
lastModifiedTime: 2013-08-30T00:55:02.587148Z
isDirectory: false
isOther: false
isRegularFile: true
isSymbolicLink: false
size: 485500
Time Stamps 설정
Path file = Paths.get("/Temp/4.gif"); BasicFileAttributes attr = Files.readAttributes(file, BasicFileAttributes.class); long currentTime = System.currentTimeMillis(); FileTime ft = FileTime.fromMillis(currentTime); Files.setLastModifiedTime(file, ft);
작업전 수정 시간 :
lastModifiedTime: 2013-08-30T00:55:02.587148Z
작업후 수정 시간 :
lastModifiedTime: 2013-12-10T08:24:38.31Z
참고 URL : http://docs.oracle.com/javase/tutorial/essential/io/fileAttr.html#basic
728x90'JAVA > NIO2' 카테고리의 다른 글
[NIO.2] POSIX FIle Permissions (0) 2013.12.16 [NIO.2]DOS File Attributes (0) 2013.12.16 [NIO.2]Managing Metadata (File and File Store Attributes) (0) 2013.11.25 [NIO.2]Moving a File or Directory (0) 2013.11.25 [NIO.2]Copying a File or Directory (0) 2013.11.25