java.util.zip

接口
异常
错误
java.lang.Object
  继承者 java.io.InputStream
      继承者 java.io.FilterInputStream
          继承者 java.util.zip.DeflaterInputStream
所有已实现的接口:
Closeable

public class DeflaterInputStream
     
extends FilterInputStream

为使用 "deflate" 压缩格式压缩数据实现输入流过滤器。

从以下版本开始:
1.6
另请参见:
DeflaterOutputStream, InflaterOutputStream, InflaterInputStream

字段摘要
protected  byte[] buf
          读取压缩数据的输入缓冲区。
protected  Deflater def
          此流的压缩器。
 
从类 java.io.FilterInputStream 继承的字段
in
 
构造方法摘要
DeflaterInputStream(InputStream in)
          创建一个带有默认压缩器和缓冲区大小的新输入流。
DeflaterInputStream(InputStream in, Deflater defl)
          创建一个带有指定压缩器和默认缓冲区大小的新输入流。
DeflaterInputStream(InputStream in, Deflater defl, int bufLen)
          创建一个带有指定压缩器和缓冲区大小的新输入流。
 
方法摘要
 int available()
          在到达 EOF 后返回 0;否则始终返回 1。
 void close()
          关闭此输入流和它的底层输入流,丢弃挂起的未压缩数据。
 void mark(int limit)
          不支持此操作
 boolean markSupported()
          始终返回 false,因为此输入流不支持 mark()reset() 方法。
 int read()
          从输入流读取一个压缩数据的单个字节。
 int read(byte[] b, int off, int len)
          将压缩数据读入 byte 数组。
 void reset()
          不支持此操作
 long skip(long n)
          从输入流中跳过并丢弃数据。
 
从类 java.io.FilterInputStream 继承的方法
read
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

def

protected final Deflater def
此流的压缩器。


buf

protected final byte[] buf
读取压缩数据的输入缓冲区。

构造方法详细信息

DeflaterInputStream

public DeflaterInputStream(InputStream in)
创建一个带有默认压缩器和缓冲区大小的新输入流。

参数:
in - 要读入未压缩数据的输入流
抛出:
NullPointerException - 如果 in 为 null

DeflaterInputStream

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

参数:
in - 要读入未压缩数据的输入流
defl - 此流的压缩器 ("deflater")
抛出:
NullPointerException - 如果 indefl 为 null

DeflaterInputStream

public DeflaterInputStream(InputStream in,
                           Deflater defl,
                           int bufLen)
创建一个带有指定压缩器和缓冲区大小的新输入流。

参数:
in - 要读入未压缩数据的输入流
defl - 此流的压缩器 ("deflater")
bufLen - 压缩缓冲区大小
抛出:
IllegalArgumentException - 如果 bufLen <= 0
NullPointerException - 如果 indefl 为 null
方法详细信息

close

public void close()
           throws IOException
关闭此输入流和它的底层输入流,丢弃挂起的未压缩数据。

指定者:
接口 Closeable 中的 close
覆盖:
FilterInputStream 中的 close
抛出:
IOException - 如果发生 I/O 错误
另请参见:
FilterInputStream.in

read

public int read()
         throws IOException
从输入流读取一个压缩数据的单个字节。在可以读取和压缩某些输入之前,此方法可能发生阻塞。

覆盖:
FilterInputStream 中的 read
返回:
压缩数据的单个字节;如果已到达未压缩输入流的末尾,则返回 -1
抛出:
IOException - 如果发生 I/O 错误或如果此流已经关闭
另请参见:
FilterInputStream.in

read

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

覆盖:
FilterInputStream 中的 read
参数:
b - 要读入数据的缓冲区
off - b 中数据的起始偏移量
len - 要读入 b 的最大压缩字节数
返回:
读取的实际字节数;如果已到达未压缩输入流的末尾,则返回 -1
抛出:
IndexOutOfBoundsException - 如果 len > b.length - off
IOException - 如果发生 I/O 错误或者此输入流已经关闭
另请参见:
FilterInputStream.in

skip

public long skip(long n)
          throws IOException
从输入流中跳过并丢弃数据。在读取和跳过指定数量的字节前,此方法将阻塞。 注: 当将 n 作为 long 给出时,可以跳过的最大字节数为 Integer.MAX_VALUE

覆盖:
FilterInputStream 中的 skip
参数:
n - 要跳过的字节数
返回:
已跳过的实际字节数
抛出:
IOException - 如果发生 I/O 错误或者此流已经关闭

available

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

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

覆盖:
FilterInputStream 中的 available
返回:
到达底层输入流的末尾之后返回 0;否则始终返回 1
抛出:
IOException - 如果发生 I/O 错误或者此流已经关闭

markSupported

public boolean markSupported()
始终返回 false,因为此输入流不支持 mark()reset() 方法。

覆盖:
FilterInputStream 中的 markSupported
返回:
始终返回 false
另请参见:
FilterInputStream.in, InputStream.mark(int), InputStream.reset()

mark

public void mark(int limit)
不支持此操作

覆盖:
FilterInputStream 中的 mark
参数:
limit - 在位置标记无效前可以读取的最大字节数
另请参见:
FilterInputStream.in, FilterInputStream.reset()

reset

public void reset()
           throws IOException
不支持此操作

覆盖:
FilterInputStream 中的 reset
抛出:
IOException - 始终抛出
另请参见:
FilterInputStream.in, FilterInputStream.mark(int)