- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.util.zip.DeflaterOutputStream
-
- java.util.zip.GZIPOutputStream
-
- 实现的所有接口
-
Closeable
,Flushable
,AutoCloseable
public class GZIPOutputStreamextends DeflaterOutputStream
此类实现了一个流过滤器,用于以GZIP文件格式写入压缩数据。- 从以下版本开始:
- 1.1
-
-
字段汇总
字段 变量和类型 字段 描述 protected CRC32
crc
未压缩数据的CRC-32。-
声明的属性在类 java.util.zip.DeflaterOutputStream
buf, def
-
声明的属性在类 java.io.FilterOutputStream
out
-
-
构造方法摘要
构造方法 构造器 描述 GZIPOutputStream(OutputStream out)
使用默认缓冲区大小创建新的输出流。GZIPOutputStream(OutputStream out, boolean syncFlush)
使用默认缓冲区大小和指定的刷新模式创建新的输出流。GZIPOutputStream(OutputStream out, int size)
创建具有指定缓冲区大小的新输出流。GZIPOutputStream(OutputStream out, int size, boolean syncFlush)
使用指定的缓冲区大小和刷新模式创建新的输出流。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 void
finish()
完成将压缩数据写入输出流而不关闭底层流。void
write(byte[] buf, int off, int len)
将字节数组写入压缩输出流。-
声明方法的类 java.util.zip.DeflaterOutputStream
close, deflate, flush, write
-
声明方法的类 java.io.FilterOutputStream
write
-
声明方法的类 java.io.OutputStream
nullOutputStream
-
-
-
-
字段详细信息
-
crc
protected CRC32 crc
未压缩数据的CRC-32。
-
-
构造方法详细信息
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out, int size) throws IOException
创建具有指定缓冲区大小的新输出流。通过调用3参数构造函数GZIPOutputStream(out,size,false)创建新的输出流实例。
- 参数
-
out
- 输出流 -
size
- 输出缓冲区大小 - 异常
-
IOException
- 如果发生I / O错误。 -
IllegalArgumentException
- 如果size <= 0
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out, int size, boolean syncFlush) throws IOException
使用指定的缓冲区大小和刷新模式创建新的输出流。- 参数
-
out
- 输出流 -
size
- 输出缓冲区大小 -
syncFlush
- 如果true
此实例的继承flush()
方法的调用在刷新输出流之前刷新具有刷新模式Deflater.SYNC_FLUSH
的压缩器,否则仅刷新输出流 - 异常
-
IOException
- 如果发生I / O错误。 -
IllegalArgumentException
- 如果size <= 0
- 从以下版本开始:
- 1.7
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out) throws IOException
使用默认缓冲区大小创建新的输出流。通过调用2参数构造函数GZIPOutputStream(out,false)创建新的输出流实例。
- 参数
-
out
- 输出流 - 异常
-
IOException
- 如果发生I / O错误。
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out, boolean syncFlush) throws IOException
使用默认缓冲区大小和指定的刷新模式创建新的输出流。- 参数
-
out
- 输出流 -
syncFlush
- 如果true
此实例的继承flush()
方法的调用在刷新输出流之前刷新具有刷新模式Deflater.SYNC_FLUSH
的压缩器,否则仅刷新输出流 - 异常
-
IOException
- 如果发生I / O错误。 - 从以下版本开始:
- 1.7
-
-
方法详细信息
-
write
public void write(byte[] buf, int off, int len) throws IOException
将字节数组写入压缩输出流。 此方法将阻塞,直到写入所有字节。- 重写:
-
write
在DeflaterOutputStream
类 - 参数
-
buf
- 要写入的数据 -
off
- 数据的起始偏移量 -
len
- 数据的长度 - 异常
-
IOException
- 如果发生I / O错误。 - 另请参见:
-
FilterOutputStream.write(int)
-
finish
public void finish() throws IOException
完成将压缩数据写入输出流而不关闭底层流。 将多个过滤器连续应用于同一输出流时,请使用此方法。- 重写:
-
finish
在DeflaterOutputStream
类 - 异常
-
IOException
- 如果发生I / O错误
-
-