@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
ByteStreams: Provides utility methods for working with byte arrays and I/O streams.
CharStreams: Provides utility methods for working with character streams.
Closeables: Utility methods for working with `Closeable` objects.
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: An InputStream that limits the number of bytes which can be read.
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: Implementation of `OutputStream` that simply discards written bytes.
PatternFilenameFilter: File name filter that only accepts files matching a regular expression.
Resources: Provides utility methods for working with resources in the classpath.

## 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.

Author:
  Chris Nokleberg

Copyright © 2010-2012. All Rights Reserved.