所有类


java.util.zip
类 InflaterInputStream

java.lang.Object
  继承者 java.io.InputStream
      继承者 java.io.FilterInputStream
          继承者 java.util.zip.InflaterInputStream
所有已实现的接口:
Closeable
直接已知子类:
GZIPInputStream, ZipInputStream

public class InflaterInputStream
   
   
   
   
   
extends FilterInputStream

此类为解压缩 "deflate" 压缩格式的数据实现流过滤器。它还用作其他解压缩过滤器(如 GZIPInputStream)的基础。

另请参见:
Inflater

字段摘要
protected  byte[]buf
          用于解压缩的输入缓冲区。
protected  Inflaterinf
          流的解压缩器。
protected  intlen
          输入缓冲区的长度。
 
从类 java.io.FilterInputStream 继承的字段
in
 
构造方法摘要
InflaterInputStream(InputStream in)
          使用默认解压缩器和缓冲区大小创建一个新输入流。
InflaterInputStream(InputStream in, Inflater inf)
          创建一个带有指定解压缩器和默认缓冲区大小的新输入流。
InflaterInputStream(InputStream in, Inflater inf, int size)
          使用指定解压缩器和缓冲区大小创建一个新输入流。
 
方法摘要
 intavailable()
          在到达 EOF 后返回 0;否则始终返回 1。
 voidclose()
          关闭此输入流并释放与该流关联的所有系统资源。
protected  voidfill()
          使用更多要解压缩的数据填充输入缓冲区。
 voidmark(int readlimit)
          标记此输入流中的当前位置。
 booleanmarkSupported()
          测试此输入流是否支持 markreset 方法。
 intread()
          读取未压缩数据的字节。
 intread(byte[] b, int off, int len)
          将未压缩数据读入字节数组。
 voidreset()
          将此流重新定位到对此输入流最后调用 mark 方法时的位置。
 longskip(long n)
          跳过指定的未压缩数据的字节数。
 
从类 java.io.FilterInputStream 继承的方法
read
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

inf

protected Inflater inf
流的解压缩器。


buf

protected byte[] buf
用于解压缩的输入缓冲区。


len

protected int len
输入缓冲区的长度。

构造方法详细信息

InflaterInputStream

public InflaterInputStream(InputStream in,
                           Inflater inf,
                           int size)
使用指定解压缩器和缓冲区大小创建一个新输入流。

参数:
in - 输入流
inf - 解压缩器 ("inflater")
size - 输入缓冲区大小
抛出:
IllegalArgumentException - 如果大小为 <= 0

InflaterInputStream

public InflaterInputStream(InputStream in,
                           Inflater inf)
创建一个带有指定解压缩器和默认缓冲区大小的新输入流。

参数:
in - 输入流
inf - 解压缩器 ("inflater")

InflaterInputStream

public InflaterInputStream(InputStream in)
使用默认解压缩器和缓冲区大小创建一个新输入流。

参数:
in - 输入流
方法详细信息

read

public int read()
         throws IOException
读取未压缩数据的字节。在足够的输入可用于解压缩之前,此方法将阻塞。

覆盖:
FilterInputStream 中的 read
返回:
如果到达已压缩输入的结尾,则返回所读取的字节
抛出:
IOException - 如果发生 I/O 错误
另请参见:
FilterInputStream.in

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException
将未压缩数据读入字节数组。在可以解压缩某些输入之前,此方法将阻塞。

覆盖:
FilterInputStream 中的 read
参数:
b - 读入数据的缓冲区
off - 数据的初始偏移量
len - 读取字节的最大数
返回:
读取字节的实际数;或者,如果到达已压缩输入的结尾或需要预置字典,则返回 -1
抛出:
ZipException - 如果发生 ZIP 格式错误
IOException - 如果发生 I/O 错误
另请参见:
FilterInputStream.in

available

public int available()
              throws IOException
在到达 EOF 后返回 0;否则始终返回 1。

程序不应依靠此方法返回无阻塞读取的实际字节数。

覆盖:
FilterInputStream 中的 available
返回:
在到达 EOF 之前返回 1;在到达 EOF 之后返回 0。
抛出:
IOException - 如果发生 I/O 错误。
另请参见:
FilterInputStream.in