- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.util.zip.InflaterOutputStream
-
- 实现的所有接口
-
Closeable
,Flushable
,AutoCloseable
public class InflaterOutputStream extends FilterOutputStream
实现输出流过滤器,用于解压缩以“deflate”压缩格式存储的数据。- 从以下版本开始:
- 1.6
- 另请参见:
-
InflaterInputStream
,DeflaterInputStream
,DeflaterOutputStream
-
-
字段汇总
字段 变量和类型 字段 描述 protected byte[]
buf
用于写入未压缩数据的输出缓冲区。protected Inflater
inf
此流的解压缩程序。-
声明的属性在类 java.io.FilterOutputStream
out
-
-
构造方法摘要
构造方法 构造器 描述 InflaterOutputStream(OutputStream out)
使用默认的解压缩程序和缓冲区大小创建新的输出流。InflaterOutputStream(OutputStream out, Inflater infl)
使用指定的解压缩程序和默认缓冲区大小创建新的输出流。InflaterOutputStream(OutputStream out, Inflater infl, int bufLen)
使用指定的解压缩程序和缓冲区大小创建新的输出流。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 void
close()
将任何剩余的未压缩数据写入输出流并关闭基础输出流。void
finish()
完成将未压缩数据写入输出流而不关闭基础流。void
flush()
刷新此输出流,强制写入任何挂起的缓冲输出字节。void
write(byte[] b, int off, int len)
将一个字节数组写入未压缩的输出流。void
write(int b)
将一个字节写入未压缩的输出流。-
声明方法的类 java.io.FilterOutputStream
write
-
声明方法的类 java.io.OutputStream
nullOutputStream
-
-
-
-
字段详细信息
-
inf
protected final Inflater inf
此流的解压缩程序。
-
buf
protected final byte[] buf
用于写入未压缩数据的输出缓冲区。
-
-
构造方法详细信息
-
InflaterOutputStream
public InflaterOutputStream(OutputStream out)
使用默认的解压缩程序和缓冲区大小创建新的输出流。- 参数
-
out
- 输出流以将未压缩数据写入 - 异常
-
NullPointerException
- 如果out
为空
-
InflaterOutputStream
public InflaterOutputStream(OutputStream out, Inflater infl)
使用指定的解压缩程序和默认缓冲区大小创建新的输出流。- 参数
-
out
- 输出流以将未压缩数据写入 -
infl
- 此流的解压缩程序(“inflater”) - 异常
-
NullPointerException
- 如果out
或infl
为空
-
InflaterOutputStream
public InflaterOutputStream(OutputStream out, Inflater infl, int bufLen)
使用指定的解压缩程序和缓冲区大小创建新的输出流。- 参数
-
out
- 输出流以将未压缩数据写入 -
infl
- 此流的解压缩程序(“inflater”) -
bufLen
- 解压缩缓冲区大小 - 异常
-
IllegalArgumentException
- 如果bufLen <= 0
-
NullPointerException
- 如果out
或infl
为空
-
-
方法详细信息
-
close
public void close() throws IOException
将任何剩余的未压缩数据写入输出流并关闭基础输出流。- Specified by:
-
close
在界面AutoCloseable
- Specified by:
-
close
接口Closeable
- 重写:
-
close
在FilterOutputStream
类 - 异常
-
IOException
- 如果发生I / O错误 - 另请参见:
-
FilterOutputStream.flush()
,FilterOutputStream.out
-
flush
public void flush() throws IOException
刷新此输出流,强制写入任何挂起的缓冲输出字节。- Specified by:
-
flush
在界面Flushable
- 重写:
-
flush
在FilterOutputStream
类 - 异常
-
IOException
- 如果发生I / O错误或此流已关闭 - 另请参见:
-
FilterOutputStream.out
-
finish
public void finish() throws IOException
完成将未压缩数据写入输出流而不关闭基础流。 将多个过滤器连续应用于同一输出流时,请使用此方法。- 异常
-
IOException
- 如果发生I / O错误或此流已关闭
-
write
public void write(int b) throws IOException
将一个字节写入未压缩的输出流。- 重写:
-
write
在FilterOutputStream
类 - 参数
-
b
- 用于解压缩和写入输出流的单字节压缩数据 - 异常
-
IOException
- 如果发生I / O错误或此流已关闭 -
ZipException
- 如果发生压缩(ZIP)格式错误
-
write
public void write(byte[] b, int off, int len) throws IOException
将一个字节数组写入未压缩的输出流。- 重写:
-
write
在FilterOutputStream
类 - 参数
-
b
- 包含压缩数据的缓冲区,用于解压缩并写入输出流 -
off
-b
内压缩数据的起始偏移量 -
len
- 要从b
解压缩的字节数 - 异常
-
IndexOutOfBoundsException
- 如果是off < 0
,或者是len < 0
,或者是len > b.length - off
-
IOException
- 如果发生I / O错误或此流已关闭 -
NullPointerException
- 如果b
为空 -
ZipException
- 如果发生压缩(ZIP)格式错误 - 另请参见:
-
FilterOutputStream.write(int)
-
-