ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [NIO.2]Basic File Attributes
    JAVA/NIO2 2013. 12. 10. 17:08
    728x90

    이전에 언급 되었듯, 파일의 기본 속성을 읽는 것은 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
Designed by Tistory.