java.io

Interfaces

Closeable A Closeable is a source or destination of data that can be closed. 
DataInput Defines an interface for classes that are able to read big-endian typed data from some source. 
DataOutput Defines an interface for classes that are able to write big-endian typed data to some target. 
Externalizable Only the identity of the class of an Externalizable instance is written in the serialization stream and it is the responsibility of the class to save and restore the contents of its instances. 
FileFilter An interface for filtering File objects based on their names or other information. 
FilenameFilter An interface for filtering File objects based on their names or the directory they reside in. 
Flushable A Flushable is a destination of data that can be flushed. 
ObjectInput Defines an interface for classes that allow reading serialized objects. 
ObjectInputValidation A callback interface for post-deserialization checks on objects. 
ObjectOutput Defines an interface for classes that allow reading serialized objects. 
ObjectStreamConstants A helper interface with constants used by the serialization implementation. 
Serializable Serializability of a class is enabled by the class implementing the java.io.Serializable interface. 

Classes

BufferedInputStream A BufferedInputStream adds functionality to another input stream-namely, the ability to buffer the input and to support the mark and reset methods. 
BufferedOutputStream The class implements a buffered output stream. 
BufferedReader Reads text from a character-input stream, buffering characters so as to provide for the efficient reading of characters, arrays, and lines. 
BufferedWriter Writes text to a character-output stream, buffering characters so as to provide for the efficient writing of single characters, arrays, and strings. 
ByteArrayInputStream A ByteArrayInputStream contains an internal buffer that contains bytes that may be read from the stream. 
ByteArrayOutputStream This class implements an output stream in which the data is written into a byte array. 
CharArrayReader This class implements a character buffer that can be used as a character-input stream. 
CharArrayWriter This class implements a character buffer that can be used as an Writer. 
Console Provides access to the console, if available. 
DataInputStream Wraps an existing InputStream and reads big-endian typed data from it. 
DataOutputStream Wraps an existing OutputStream and writes big-endian typed data to it. 
File An "abstract" representation of a file system entity identified by a pathname. 
FileDescriptor Wraps a Unix file descriptor. 
FileInputStream An input stream that reads bytes from a file. 
FileOutputStream An output stream that writes bytes to a file. 
FilePermission Legacy security code; do not use. 
FileReader A specialized Reader that reads from a file in the file system. 
FileWriter A specialized Writer that writes to a file in the file system. 
FilterInputStream A FilterInputStream contains some other input stream, which it uses as its basic source of data, possibly transforming the data along the way or providing additional functionality. 
FilterOutputStream This class is the superclass of all classes that filter output streams. 
FilterReader Abstract class for reading filtered character streams. 
FilterWriter Abstract class for writing filtered character streams. 
InputStream This abstract class is the superclass of all classes representing an input stream of bytes. 
InputStreamReader An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into characters using a specified charset
LineNumberInputStream This class was deprecated. This class incorrectly assumes that bytes adequately represent characters. As of JDK 1.1, the preferred way to operate on character streams is via the new character-stream classes, which include a class for counting line numbers.  
LineNumberReader A buffered character-input stream that keeps track of line numbers. 
ObjectInputStream A specialized InputStream that is able to read (deserialize) Java objects as well as primitive data types (int, byte, char etc.). 
ObjectInputStream.GetField GetField is an inner class that provides access to the persistent fields read from the source stream. 
ObjectOutputStream A specialized OutputStream that is able to write (serialize) Java objects as well as primitive data types (int, byte, char etc.). 
ObjectOutputStream.PutField PutField is an inner class to provide access to the persistent fields that are written to the target stream. 
ObjectStreamClass Represents a descriptor for identifying a class during serialization and deserialization. 
ObjectStreamField Describes a field for the purpose of serialization. 
OutputStream This abstract class is the superclass of all classes representing an output stream of bytes. 
OutputStreamWriter A class for turning a character stream into a byte stream. 
PipedInputStream Receives information from a communications pipe. 
PipedOutputStream Places information on a communications pipe. 
PipedReader Piped character-input streams. 
PipedWriter Piped character-output streams. 
PrintStream A PrintStream adds functionality to another output stream, namely the ability to print representations of various data values conveniently. 
PrintWriter Prints formatted representations of objects to a text-output stream. 
PushbackInputStream A PushbackInputStream adds functionality to another input stream, namely the ability to "push back" or "unread" one byte. 
PushbackReader A character-stream reader that allows characters to be pushed back into the stream. 
RandomAccessFile Allows reading from and writing to a file in a random-access manner. 
Reader Abstract class for reading character streams. 
SequenceInputStream A SequenceInputStream represents the logical concatenation of other input streams. 
SerializablePermission Legacy security code; do not use. 
SerialVersionUIDDigest Dynamically loaded implementation for computing serialVersionUID hashes. 
StreamTokenizer Parses a stream into a set of defined tokens, one at a time. 
StringBufferInputStream This class was deprecated. This class does not properly convert characters into bytes. As of JDK 1.1, the preferred way to create a stream from a string is via the StringReader class.  
StringReader A character stream whose source is a string. 
StringWriter A character stream that collects its output in a string buffer, which can then be used to construct a string. 
Writer Abstract class for writing to character streams. 

Exceptions

CharConversionException Base class for character conversion exceptions. 
EOFException Signals that an end of file or end of stream has been reached unexpectedly during input. 
FileNotFoundException Signals that an attempt to open the file denoted by a specified pathname has failed. 
InterruptedIOException Signals that an I/O operation has been interrupted. 
InvalidClassException Thrown when the Serialization runtime detects one of the following problems with a Class. 
InvalidObjectException Indicates that one or more deserialized objects failed validation tests. 
IOException Signals that an I/O exception of some sort has occurred. 
NotActiveException Thrown when serialization or deserialization is not active. 
NotSerializableException Thrown when an instance is required to have a Serializable interface. 
ObjectStreamException Superclass of all exceptions specific to Object Stream classes. 
OptionalDataException Exception indicating the failure of an object read operation due to unread primitive data, or the end of data belonging to a serialized object in the stream. 
StreamCorruptedException Thrown when control information that was read from an object stream violates internal consistency checks. 
SyncFailedException Signals that a sync operation has failed. 
UncheckedIOException Wraps an IOException with an unchecked exception. 
UnsupportedEncodingException The Character Encoding is not supported. 
UTFDataFormatException Signals that a malformed string in modified UTF-8 format has been read in a data input stream or by any class that implements the data input interface. 
WriteAbortedException Signals that one of the ObjectStreamExceptions was thrown during a write operation. 

Errors