@ParametersAreNonnullByDefault

Package com.google.common.io

This package contains utility methods and classes for working with Java I/O, for example input streams, output streams, readers, writers, and files.

See:
          Description

Interface Summary
ByteArrayDataInput An extension of DataInput for reading from in-memory byte arrays; its methods offer identical functionality but do not throw IOException.
ByteArrayDataOutput An extension of DataOutput for writing to in-memory byte arrays; its methods offer identical functionality but do not throw IOException.
ByteProcessor<T> A callback interface to process bytes from a stream.
InputSupplier<T> A factory for readable streams of bytes or characters.
LineProcessor<T> A callback to be used with the streaming readLines methods.
OutputSupplier<T> A factory for writable streams of bytes or characters.
 

Class Summary
BaseEncoding A binary encoding scheme for reversibly translating between byte sequences and printable ASCII strings.
ByteSink A destination to which bytes can be written, such as a file.
ByteSource A readable source of bytes, such as a file.
ByteStreams Provides utility methods for working with byte arrays and I/O streams.
CharSink A destination to which characters can be written, such as a text file.
CharSource A readable source of characters, such as a text file.
CharStreams Provides utility methods for working with character streams.
Closeables Utility methods for working with Closeable objects.
Closer A Closeable that collects Closeable resources and closes them all when it is closed.
CountingInputStream An InputStream that counts the number of bytes read.
CountingOutputStream An OutputStream that counts the number of bytes written.
FileBackedOutputStream An OutputStream that starts buffering to a byte array, but switches to file buffering once the data reaches a configurable size.
Files Provides utility methods for working with files.
Flushables Utility methods for working with Flushable objects.
LimitInputStream Deprecated. Use ByteStreams.limit(java.io.InputStream, long) instead.
LineReader A class for reading lines of text.
LittleEndianDataInputStream An implementation of DataInput that uses little-endian byte ordering for reading short, int, float, double, and long values.
LittleEndianDataOutputStream An implementation of DataOutput that uses little-endian byte ordering for writing char, short, int, float, double, and long values.
NullOutputStream Deprecated. Use ByteStreams.nullOutputStream() instead.
PatternFilenameFilter File name filter that only accepts files matching a regular expression.
Resources Provides utility methods for working with resources in the classpath.
 

Enum Summary
FileWriteMode Modes for opening a file for writing.
 

Package com.google.common.io Description

This package contains utility methods and classes for working with Java I/O, for example input streams, output streams, readers, writers, and files.

Many of the methods are based on the InputSupplier and OutputSupplier interfaces. They are used as factories for I/O objects that might throw IOException when being created. The advantage of using a factory is that the helper methods in this package can take care of closing the resource properly, even if an exception is thrown. The ByteStreams, CharStreams, and Files classes all have static helper methods to create new factories and to work with them.

This package is a part of the open-source Guava libraries.