# Package org.apache.commons.io

This package defines utility classes for working with streams, readers, writers and files.

See: Description

- Class Summary
  Class | Description
  --- | ---
  ByteOrderMark | Byte Order Mark (BOM) representation - see `BOMInputStream`.
  ByteOrderParser | Converts Strings to `ByteOrder` instances.
  Charsets | Charsets required of every implementation of the Java platform.
  CopyUtils | Deprecated Use IOUtils.
  DirectoryWalker<T> | Abstract class that walks through a directory hierarchy and provides subclasses with convenient hooks to add specific behavior.
  EndianUtils | Utility code for dealing with different endian systems.
  FileCleaner | Deprecated Use `FileCleaningTracker`
  FileCleaningTracker | Keeps track of files awaiting deletion, and deletes them when an associated marker object is reclaimed by the garbage collector.
  FileDeleteStrategy | Strategy for deleting files.
  FilenameUtils | General file name and file path manipulation utilities.
  FileSystemUtils | Deprecated As of 2.6 deprecated without replacement.
  FileUtils | General file manipulation utilities.
  HexDump | Dumps data in hexadecimal format.
  IOUtils | General IO stream manipulation utilities.
  LineIterator | An Iterator over the lines in a `Reader`.

- Enum Summary
  Enum | Description
  --- | ---
  FileSystem | Abstracts an OS' file system details, currently supporting the single use case of converting a file name String to a legal file name with `FileSystem.toLegalFileName(String, char)`.
  IOCase | Enumeration of IO case sensitivity.

- Exception Summary
  Exception | Description
  --- | ---
  DirectoryWalker.CancelException | CancelException is thrown in DirectoryWalker to cancel the current processing.
  FileExistsException | Indicates that a file already exists.
  IOExceptionList | A IOException based on a list of Throwable causes.
  IOExceptionWithCause | Deprecated (since 2.5) use `IOException` instead
  IOIndexedException | A IOException associated with a source index.
  TaggedIOException | An `IOException` decorator that adds a serializable tag to the wrapped exception.

## Package org.apache.commons.io Description

This package defines utility classes for working with streams, readers, writers and files. The most commonly used classes are described here:

IOUtils is the most frequently used class. It provides operations to read, write, copy and close streams.

FileUtils provides operations based around the JDK File class. These include reading, writing, copying, comparing and deleting.

FilenameUtils provides utilities based on filenames. This utility class manipulates filenames without using File objects. It aims to simplify the transition between Windows and Unix. Before using this class however, you should consider whether you should be using File objects.

FileSystemUtils allows access to the filing system in ways the JDK does not support. At present this allows you to get the free space on a drive.

EndianUtils swaps data between Big-Endian and Little-Endian formats.

Copyright © 2002–2020 The Apache Software Foundation. All rights reserved.