# Package org.gradle.api.file

@NonNullApi package org.gradle.api.file
Classes for working with files.

- Related Packages
  Package
  Description
  org.gradle.api
  Gradle's build language API, which is available from your build files.
- Class
  Description
  ArchiveOperations
  Operations on archives such as ZIP or TAR files.
  BuildLayout
  Provides access to important locations for a Gradle build.
  ConfigurableFileCollection
  A `ConfigurableFileCollection` is a mutable `FileCollection`.
  ConfigurableFilePermissions
  Provides the means of specifying file and directory access permissions for all classes of system users.
  ConfigurableFileTree
  A `FileTree` with a single base directory, which can be configured and modified.
  ConfigurableUserClassFilePermissions
  Provides the means of specifying file and directory access permissions for a certain class of users (see `ConfigurableFilePermissions`).
  ContentFilterable
  Represents some binary resource whose content can be filtered.
  CopyProcessingSpec
  Specifies the destination of a copy.
  CopySourceSpec
  Specifies sources for a file copy.
  CopySpec
  A set of specifications for copying files.
  DeleteSpec
  A specification for deleting files from the filesystem.
  Directory
  Represents a directory at some fixed location on the file system.
  DirectoryProperty
  Represents some configurable directory location, whose value is mutable.
  DirectoryTree
  A directory with some associated include and exclude patterns.
  DuplicateFileCopyingException
  Thrown when more than one file with the same relative path name is to be copied and the `DuplicatesStrategy` is set to DuplicatesStrategy.FAIL
  DuplicatesStrategy
  Strategies for dealing with the potential creation of duplicate files or archive entries.
  EmptyFileVisitor
  The EmptyFileVisitor can be extends by implementations that only require to implement one of the 2 visit methods (dir or file).
  ExpandDetails
  Additional configuration parameters for `ContentFilterable.expand(Map, Action)` action.
  FileCollection
  A `FileCollection` represents a collection of file system locations which you can query in certain ways.
  FileCollection.AntType
  Ant types which a `FileCollection` can be mapped to.
  FileContents
  Provides lazy access to the contents of a given file.
  FileCopyDetails
  Provides details about a file or directory about to be copied, and allows some aspects of the destination file to be modified.
  FilePermissions
  Describes file and directory access permissions for all classes of system users.
  FileSystemLocation
  Represents some immutable location on the file system.
  FileSystemLocationProperty<T extends FileSystemLocation>
  Represents some element of the file system.
  FileSystemOperations
  Operations on the file system.
  FileTree
  A `FileTree` represents a hierarchy of files.
  FileTreeElement
  Information about a file in a directory/file tree.
  FileType
  The type of a file.
  FileVisitDetails
  Provides access to details about a file or directory being visited by a `FileVisitor`.
  FileVisitor
  A `FileVisitor` is used to visit each of the files in a `FileTree`.
  ProjectLayout
  Provides access to several important locations for a project.
  RegularFile
  Represents a regular file at a fixed location on the file system.
  RegularFileProperty
  Represents some configurable regular file location, whose value is mutable.
  RelativePath
  Represents a relative path from some base directory to a file.
  ReproducibleFileVisitor
  Visitor which can request a reproducible file order.
  SourceDirectorySet
  A `SourceDirectorySet` represents a set of source files composed from a set of source directories, along with associated include and exclude patterns.
  SyncSpec
  Synchronizes the contents of a destination directory with some source directories and files.
  UserClassFilePermissions
  Describes file and directory access permissions for a certain class of users (see `FilePermissions`).