And the Rest . . .
In addition to the classes and interfaces discussed in this lesson,
java.io contains the following classes and interfaces: 
- 
File
 - 
Represents a file on the native file system.
You can create a 
File object for a file
on the native file system and then query the object
for information about that file (such as its full pathname). 
 - 
FileDescriptor
 - 
Represents a file handle (or descriptor)
to an open file or an open socket.
You will not typically use this class. 
 - 
StreamTokenizer
 - 
Breaks the contents of a stream into tokens.
Tokens are the smallest unit recognized by a text-parsing algorithm
(such as words, symbols, and so on).
A 
StreamTokenizer object can be used
to parse any text file.
For example, you could use it to parse a Java source file
into variable names, operators, and so on,
or to parse an HTML file into HTML tags.
 - 
FilenameFilter
 - 
Used by the list method in the 
File class
to determine which files in a directory to list.
The FilenameFilter accepts or rejects files based on
their names.
You could use FilenameFilter to implement simple regular
expression style file search patterns such as foo*.
 
You also can find some other input and output streams
in the java.util.zip package, including these:
- 
CheckedInputStream and
CheckedOutputStream
 - 
An input and output stream pair that maintains a checksum as the data
is being read or written.
 - 
DeflaterOutputStreamand
InflaterInputStream
 - 
Compresses or uncompresses the data as it is being read or written.
 - 
GZIPInputStream and
GZIPOutputStream
 - 
Reads and writes compressed data in the GZIP format.
 - 
ZipInputStream and
ZipOutputStream
 - 
Reads and writes compressed data in the ZIP format.