FileSystemException (Java SE 22 & JDK 22)
Description: declaration: module: java.base, package: java.nio.file, class: FileSystemException
Keywords: java.nio.file.FileSystemException class

Module java.base
Package java.nio.file

# Class FileSystemException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.io.IOException
java.nio.file.FileSystemException

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `AccessDeniedException`, `AtomicMoveNotSupportedException`, `DirectoryNotEmptyException`, `FileAlreadyExistsException`, `FileSystemLoopException`, `NoSuchFileException`, `NotDirectoryException`, `NotLinkException`

public class FileSystemException extends IOException
Thrown when a file system operation fails on one or two files. This class is the general class for file system exceptions.

Since:
  1.7
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FileSystemException(String file)`
  Constructs an instance of this class.
  `FileSystemException(String file, String other, String reason)`
  Constructs an instance of this class.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getFile()`
  Returns the file used to create this exception.
  `String`
  `getMessage()`
  Returns the detail message string.
  `String`
  `getOtherFile()`
  Returns the other file used to create this exception.
  `String`
  `getReason()`
  Returns the string explaining why the file system operation failed.

  ### Methods declared in class java.lang.Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### FileSystemException

    public FileSystemException(String file)
    Constructs an instance of this class. This constructor should be used when an operation involving one file fails and there isn't any additional information to explain the reason.
    Parameters:
      `file` - a string identifying the file or `null` if not known.

  - ### FileSystemException

    public FileSystemException(String file, String other, String reason)
    Constructs an instance of this class. This constructor should be used when an operation involving two files fails, or there is additional information to explain the reason.
    Parameters:
      `file` - a string identifying the file or `null` if not known.
      `other` - a string identifying the other file or `null` if there isn't another file or if not known
      `reason` - a reason message with additional information or `null`

- ## Method Details

  - ### getFile

    public String getFile()
    Returns the file used to create this exception.
    Returns:
      the file (can be `null`)

  - ### getOtherFile

    public String getOtherFile()
    Returns the other file used to create this exception.
    Returns:
      the other file (can be `null`)

  - ### getReason

    public String getReason()
    Returns the string explaining why the file system operation failed.
    Returns:
      the string explaining why the file system operation failed

  - ### getMessage

    public String getMessage()
    Returns the detail message string.
    Overrides:
      `getMessage` in class `Throwable`
    Returns:
      the detail message string of this `Throwable` instance (which may be `null`).