(4)InflaterInputStream压缩过滤流。这里的过滤是指文件类型的过滤,即有选择地输入inflater格式的压缩文件,进行解压过滤。这个类属于java.util.zip包,其父类是java.io包的FilterInputStream。这是一个过渡类。
(5)LineNumberInputstream类可以记录所读取数据的行数,现在已经不**使用。
(6)PushBackInputstream类对于字节输入流进行这样的过滤:超前读入一个字节后推回。这个类在编写编译器时用得较多。
(7)DataInputstream在读入字节数据时,进行Java基本数据类型判断过滤。
6.java.io包中的过滤字节输出流
过滤字节输出流都是抽象类FilterOutputstream的子类。
(1)BufferedOutputStream和BufferedInputStream相对应,缓冲区优化了字节数据传送。
(2)CheckedOutputStream和CheckedInputStream相对应,属于java.util.zip包,继承了java.io包的FilteroutputStream类,是一个带计算数据校验和的字节输出流。
(3)DigestoutputStream和DigestInputStream相对应,同属java.security包。这个类和该包中的另一个类MessageDigest相配合,进行输出流的消息摘要过滤。
(4)DeflaterOutputStream和InnaterInputstream相对应,将输入加压文件进行解压过滤和输出解压(Deflater格式)文件进行加压过滤相结合。这是一个过渡类。
(5)PrintStream类是字节输出流特有的类,该类把Java的基本数据类型转换成字符串表示。这个类目前多用在System.out和System.err上,为控制台方式的标准输出。在其他应用方面,已经被PrintWriter所取代。
(6)Dataoutputstream和DataInputstream相对应,进行字节输出的基本数据类型判断。或者说以二进制形式向字节输出流中写入一个单个的Java基本数据类型。
7.java.io包中的压缩文件输入流
压缩文件输入流类都是InnaterInputstream的子类,是以字节压缩为特征的过滤流。
(1)GzIPInputstream类在java.util.zip包中,该类用于输入以gzip格式进行压缩的文件,是对于输入文件类型的一种解压过滤。
(2)ZipInputStreram类也在java.util.zip包中,用于输入zip格式的文件,是对文件类型格式的一种解压过滤。
(3)JarInputStream类在java.util.jat包中,是ZipInputStream的子类,用于输入jar文件。
8.java.io包中的压缩文件输出流
压缩文件输出流类都是DenaterOutputstream的子类。
(1)GZIPOutputStream类在java.util.zip包中,与GzIPInputstrea面相对应,用于对Deflater格式的数据进行加压过滤。
(2)zipOutputstream类处理后的文件类型是zip型,用于对Deflater格式的数据进行加压过滤。
(3)JarOutputStream在java.util.jar包,该类继承了zipoutputStream类,过滤处理的是jar格式的文件。