See More

-------------------------------- ÊôÐÔ | -------------------------------- # java.nio.file.attribute * Ö§³ÖºÜÏêϸµÄÊôÐÔÉèÖÃ,°üÀ¨È¨ÏÞµÈµÈ # ÊôÐÔµÄ×î¶¥²ã½Ó¿Ú # Ìåϵ AttributeView |-FileAttributeView(ÎļþÊôÐÔ½Ó¿Ú) |-BasicFileAttributeView * »ù±¾ÎļþÊôÐÔ½Ó¿Ú |-PosixFileAttributes * ÈíÁ¬½ÓÎļþÊôÐÔ½Ó¿Ú |-UserDefinedFileAttributeView * Óû§×Ô¶¨ÒåÊôÐÔ½Ó¿Ú |-FileOwnerAttributeView * ÎļþËùÓÐÕßÊôÐÔ½Ó¿Ú |-AclFileAttributeView * aclȨÏÞÊôÐÔ½Ó¿Ú |-FileStoreAttributeView(´ÅÅÌ·ÖÇøÊôÐÔ½Ó¿Ú) FileAttribute # ÊôÐÔ½Ó¿Ú # Á©³éÏó·½·¨ String name(); T value(); PosixFilePermission # ȨÏÞÊôÐÔö¾ÙÀà # ËùÓÐÕßȨÏÞ OWNER_READ, OWNER_WRITE, OWNER_EXECUTE, # ËùÊô×éȨÏÞ GROUP_READ, GROUP_WRITE, GROUP_EXECUTE, # ÆäËûÈËȨÏÞ OTHERS_READ, OTHERS_WRITE, OTHERS_EXECUTE; PosixFilePermissions # ȨÏÞÊôÐÔ¶ÔÏ󹤾ßÀà # ÎÞ·¨ÊµÀý»¯¶ÔÏó,¶¼ÊǾ²Ì¬·½·¨ Set fromString(String perms); # ¸ù¾ÝLinuxµÄȨÏÞÉèÖÃ×Ö·û´®,À´´´½¨Ò»×é PosixFilePermission ¶ÔÏó # "rw-------" FileAttribute> asFileAttribute(Set perms); # °ÑÒ»×é PosixFilePermission ת»»ÎªÎļþÊôÐÔ¶ÔÏó -------------------------------- BasicFileAttributeView ½Ó¿Ú·½·¨ | -------------------------------- BasicFileAttributes readAttributes(); * »ñÈ¡ÎļþÊôÐÔ void setTimes(FileTime lastModifiedTime,FileTime lastAccessTime, FileTime createTime) * Ö±½ÓÉèÖÃØí¸öʱ¼äÏà¹ØµÄÊôÐÔ -------------------------------- BasicFileAttributes | -------------------------------- # ÎļþÊôÐÔÃèÊö¶ÔÏó # »ñÈ¡ BasicFileAttributes basicFileAttributes = Files.readAttributes(path,BasicFileAttributes.class); # ʵÀý·½·¨ FileTime lastModifiedTime(); FileTime lastAccessTime(); FileTime creationTime(); boolean isRegularFile(); boolean isDirectory(); boolean isSymbolicLink(); boolean isOther(); long size(); Object fileKey(); -------------------------------- »ñÈ¡ÎļþÊôÐÔ | -------------------------------- Path path = Paths.get("/temp/demo.txt"); 1,Ö±½Ó»ñȡָ¶¨µÄÊôÐÔ long size = (Long) Files.getAttribute(path, "basic:size", java.nio.file.LinkOption.NOFOLLOW_LINKS); 2,¸ù¾Ý½Ó¿ÚÀàÐÍ,»ñÈ¡ÊôÐÔView V Files.getFileAttributeView(Path path,Class type,LinkOption... options) -------------------------------- ÉèÖÃÎļþÊôÐÔ | -------------------------------- Path path = Paths.get("/temp/demo.txt"); FileTime fileTime = FileTime.fromMillis(new Date().getTime()); Files.setAttribute(path, "basic:lastModifiedTime", fileTime, LinkOption.NOFOLLOW_LINKS); //×îºóÐÞ¸Äʱ¼ä Files.setAttribute(path, "basic:creationTime", fileTime, LinkOption.NOFOLLOW_LINKS); //´´½¨Ê±¼ä Files.setAttribute(path, "basic:lastAccessTime", fileTime, LinkOption.NOFOLLOW_LINKS); //×îºó·ÃÎÊʱ¼ä -------------------------------- ÐÞ¸ÄÎļþÊôÐÔ | -------------------------------- long time = System.currentTimeMillis(); FileTime fileTime = FileTime.fromMillis(time); BasicFileAttributeView basicFileAttributeView = Files.getFileAttributeView(path, BasicFileAttributeView.class); basicFileAttributeView.setTimes(fileTime, fileTime, fileTime); --------------------------- ȨÏÞÉèÖà | --------------------------- Set perms = PosixFilePermissions.fromString("rw-------"); FileAttribute> attrs = PosixFilePermissions.asFileAttribute(perms); Files.setPosixFilePermissions(path,attrs) --------------------------- »ñÈ¡ACLȨÏÞ | --------------------------- AclFileAttributeView aclview = Files.getFileAttributeView(path, AclFileAttributeView.class); List acllist = aclview.getAcl();