Uses of Interface java.nio.file.attribute.FileAttribute (Java Platform SE 8 )
Date: 2026-04-24

## 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 and 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 and 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(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.`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.`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 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 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 and 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 and 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.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.