Package java.nio.file.attribute

Interfaces and classes providing access to file and file system attributes.

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 Tabl (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.

Since:
1.7
Interface Description
AclFileAttributeView

A file attribute view that supports reading or updating a file's Access Control Lists (ACL) or file owner attributes.

AttributeView

An object that provides a read-only or updatable view of non-opaque values associated with an object in a filesystem.

BasicFileAttributes

Basic attributes associated with a file in a file system.

BasicFileAttributeView

A file attribute view that provides a view of a basic set of file attributes common to many file systems.

DosFileAttributes

File attributes associated with a file in a file system that supports legacy "DOS" attributes.

DosFileAttributeView

A file attribute view that provides a view of the legacy "DOS" file attributes.

FileAttribute<T>

An object that encapsulates the value of a file attribute that can be set atomically when creating a new file or directory by invoking the createFile or createDirectory methods.

FileAttributeView

An attribute view that is a read-only or updatable view of non-opaque values associated with a file in a filesystem.

FileOwnerAttributeView

A file attribute view that supports reading or updating the owner of a file.

FileStoreAttributeView

An attribute view that is a read-only or updatable view of the attributes of a FileStore.

GroupPrincipal

A UserPrincipal representing a group identity, used to determine access rights to objects in a file system.

PosixFileAttributes

File attributes associated with files on file systems used by operating systems that implement the Portable Operating System Interface (POSIX) family of standards.

PosixFileAttributeView

A file attribute view that provides a view of the file attributes commonly associated with files on file systems used by operating systems that implement the Portable Operating System Interface (POSIX) family of standards.

UserDefinedFileAttributeView

A file attribute view that provides a view of a file's user-defined attributes, sometimes known as extended attributes.

UserPrincipal

A Principal representing an identity used to determine access rights to objects in a file system.

Class Description
AclEntry

An entry in an access control list (ACL).

AclEntry.Builder

A builder of AclEntry objects.

FileTime

Represents the value of a file's time stamp attribute.

PosixFilePermissions

This class consists exclusively of static methods that operate on sets of PosixFilePermission objects.

UserPrincipalLookupService

An object to lookup user and group principals by name.

Enum Description
AclEntryFlag

Defines the flags for used by the flags component of an ACL entry.

AclEntryPermission

Defines the permissions for use with the permissions component of an ACL entry.

AclEntryType

A typesafe enumeration of the access control entry types.

PosixFilePermission

Defines the bits for use with the permissions attribute.

Exception Description
UserPrincipalNotFoundException

Checked exception thrown when a lookup of UserPrincipal fails because the principal does not exist.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/attribute/package-summary.html