## Uses of Interface
java.nio.file.attribute.FileAttribute

- Packages that use FileAttribute
  Package | Description
  --- | ---
  java.nio.channels | Defines channels, which represent connections to entities that are capable of performing I/O operations, such as files and sockets; defines selectors, for multiplexed, non-blocking I/O operations.
  java.nio.file | Defines interfaces and classes for the Java virtual machine to access files, file attributes, and file systems.
  java.nio.file.attribute | Interfaces and classes providing access to file and file system attributes.
  java.nio.file.spi | Service-provider classes for the `java.nio.file` package.

- - ### Uses of FileAttribute in java.nio.channels

    Methods in java.nio.channels with parameters of type FileAttribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static AsynchronousFileChannel` | AsynchronousFileChannel.`open​(Path file, Set<? extends OpenOption> options, ExecutorService executor, FileAttribute<?>... attrs)` | Opens or creates a file for reading and/or writing, returning an asynchronous file channel to access the file.
    `static FileChannel` | FileChannel.`open​(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs)` | Opens or creates a file, returning a file channel to access the file.

  - ### Uses of FileAttribute in java.nio.file

    Methods in java.nio.file with parameters of type FileAttribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static Path` | Files.`createDirectories​(Path dir, FileAttribute<?>... attrs)` | Creates a directory by creating all nonexistent parent directories first.
    `static Path` | Files.`createDirectory​(Path dir, FileAttribute<?>... attrs)` | Creates a new directory.
    `static Path` | Files.`createFile​(Path path, FileAttribute<?>... attrs)` | Creates a new and empty file, failing if the file already exists.
    `static Path` | Files.`createSymbolicLink​(Path link, Path target, FileAttribute<?>... attrs)` | Creates a symbolic link to a target (optional operation).
    `static Path` | Files.`createTempDirectory​(String prefix, FileAttribute<?>... attrs)` | Creates a new directory in the default temporary-file directory, using the given prefix to generate its name.
    `static Path` | Files.`createTempDirectory​(Path dir, String prefix, FileAttribute<?>... attrs)` | Creates a new directory in the specified directory, using the given prefix to generate its name.
    `static Path` | Files.`createTempFile​(String prefix, String suffix, FileAttribute<?>... attrs)` | Creates an empty file in the default temporary-file directory, using the given prefix and suffix to generate its name.
    `static Path` | Files.`createTempFile​(Path dir, String prefix, String suffix, FileAttribute<?>... attrs)` | Creates a new empty file in the specified directory, using the given prefix and suffix strings to generate its name.
    `static SeekableByteChannel` | Files.`newByteChannel​(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs)` | Opens or creates a file, returning a seekable byte channel to access the file.
    `SeekableByteChannel` | SecureDirectoryStream.`newByteChannel​(T path, Set<? extends OpenOption> options, FileAttribute<?>... attrs)` | Opens or creates a file in this directory, returning a seekable byte channel to access the file.

  - ### Uses of FileAttribute in java.nio.file.attribute

    Methods in java.nio.file.attribute that return FileAttribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static FileAttribute<Set<PosixFilePermission>>` | PosixFilePermissions.`asFileAttribute​(Set<PosixFilePermission> perms)` | Creates a `FileAttribute`, encapsulating a copy of the given file permissions, suitable for passing to the `createFile` or `createDirectory` methods.

  - ### Uses of FileAttribute in java.nio.file.spi

    Methods in java.nio.file.spi with parameters of type FileAttribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract void` | FileSystemProvider.`createDirectory​(Path dir, FileAttribute<?>... attrs)` | Creates a new directory.
    `void` | FileSystemProvider.`createSymbolicLink​(Path link, Path target, FileAttribute<?>... attrs)` | Creates a symbolic link to a target.
    `AsynchronousFileChannel` | FileSystemProvider.`newAsynchronousFileChannel​(Path path, Set<? extends OpenOption> options, ExecutorService executor, FileAttribute<?>... attrs)` | Opens or creates a file for reading and/or writing, returning an asynchronous file channel to access the file.
    `abstract SeekableByteChannel` | FileSystemProvider.`newByteChannel​(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs)` | Opens or creates a file, returning a seekable byte channel to access the file.
    `FileChannel` | FileSystemProvider.`newFileChannel​(Path path, Set<? extends OpenOption> options, FileAttribute<?>... attrs)` | Opens or creates a file for reading and/or writing, returning a file channel to access the file.