Module java.base

Package java.nio.file.attribute

Interfaces and classes providing access to file and file system attributes.
Attribute views
Attribute views Description
AttributeView Can read or update non-opaque values associated with objects in a file system
FileAttributeView Can read or update file attributes
BasicFileAttributeView Can read or update a basic set of file attributes
PosixFileAttributeView Can read or update POSIX defined file attributes
DosFileAttributeView Can read or update FAT file attributes
FileOwnerAttributeView Can read or update the owner of a file
AclFileAttributeView Can read or update Access Control Lists
UserDefinedFileAttributeView Can read or update user-defined file attributes
FileStoreAttributeView Can read or update file system attributes

An attribute view provides a read-only or updatable view of the non-opaque values, or metadata, associated with objects in a file system. The FileAttributeView interface is extended by several other interfaces that provide views to specific sets of file attributes. FileAttributeViews are selected by invoking the Files.getFileAttributeView(java.nio.file.Path, java.lang.Class<V>, java.nio.file.LinkOption...) method with a type-token to identify the required view. Views can also be identified by name. The FileStoreAttributeView interface provides access to file store attributes. A FileStoreAttributeView of a given type is obtained by invoking the FileStore.getFileStoreAttributeView(java.lang.Class<V>) method.

The BasicFileAttributeView class defines methods to read and update a basic set of file attributes that are common to many file systems.

The PosixFileAttributeView interface extends BasicFileAttributeView by defining methods to access the file attributes commonly used by file systems and operating systems that implement the Portable Operating System Interface (POSIX) family of standards.

The DosFileAttributeView class extends BasicFileAttributeView by defining methods to access the legacy "DOS" file attributes supported on file systems such as File Allocation Table (FAT), commonly used in consumer devices.

The AclFileAttributeView class defines methods to read and write the Access Control List (ACL) file attribute. The ACL model used by this file attribute view is based on the model defined by RFC 3530: Network File System (NFS) version 4 Protocol.

In addition to attribute views, this package also defines classes and interfaces that are used when accessing attributes:

  • The UserPrincipal and GroupPrincipal interfaces represent an identity or group identity.
  • The UserPrincipalLookupService interface defines methods to lookup user or group principals.
  • The FileAttribute interface represents the value of an attribute for cases where the attribute value is required to be set atomically when creating an object in the file system.

Unless otherwise noted, passing a null argument to a constructor or method in any class or interface in this package will cause a NullPointerException to be thrown.