public class DeflaterOutputStream extends FilterOutputStream
Deflater
| Modifier and Type | Field and Description |
|---|---|
protected byte[] |
buf
用于写入压缩数据的输出缓冲区
|
protected Deflater |
def
此流的压缩器。
|
out| Constructor and Description |
|---|
DeflaterOutputStream(OutputStream out)
创建具有默认压缩器和缓冲区大小的新输出流。
|
DeflaterOutputStream(OutputStream out, boolean syncFlush)
使用默认压缩器,默认缓冲区大小和指定的刷新模式创建新的输出流。
|
DeflaterOutputStream(OutputStream out, Deflater def)
创建具有指定压缩器和默认缓冲区大小的新输出流。
|
DeflaterOutputStream(OutputStream out, Deflater def, boolean syncFlush)
使用指定的压缩器,刷新模式和默认缓冲区大小创建新的输出流。
|
DeflaterOutputStream(OutputStream out, Deflater def, int size)
创建具有指定压缩器和缓冲区大小的新输出流。
|
DeflaterOutputStream(OutputStream out, Deflater def, int size, boolean syncFlush)
创建具有指定压缩器,缓冲区大小和冲洗模式的新输出流。
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
将剩余的压缩数据写入输出流并关闭底层流。
|
protected void |
deflate()
将下一个压缩数据块写入输出流。
|
void |
finish()
完成将压缩数据写入输出流,而不关闭底层流。
|
void |
flush()
刷新压缩的输出流。
|
void |
write(byte[] b, int off, int len)
将一个字节数组写入压缩的输出流。
|
void |
write(int b)
将一个字节写入压缩的输出流。
|
writeprotected Deflater def
protected byte[] buf
public DeflaterOutputStream(OutputStream out, Deflater def, int size, boolean syncFlush)
out - 输出流
def - 压缩机(“deflater”)
size - 输出缓冲区大小
syncFlush - 如果
true此实例的
flush()方法在刷新输出流之前用冲洗模式
Deflater.SYNC_FLUSH刷新压缩器,否则仅刷新输出流
IllegalArgumentException - 如果
size <= 0
public DeflaterOutputStream(OutputStream out, Deflater def, int size)
通过调用4参数构造函数DeflaterOutputStream(out,def,size,false)创建新的输出流实例。
out - 输出流
def - 压缩机(“deflater”)
size - 输出缓冲区大小
IllegalArgumentException - 如果
size <= 0
public DeflaterOutputStream(OutputStream out, Deflater def, boolean syncFlush)
out - 输出流
def - 压缩机(“deflater”)
syncFlush - 如果
true此实例的
flush()方法在刷新输出流之前用冲洗模式
Deflater.SYNC_FLUSH刷新压缩器,否则仅刷新输出流
public DeflaterOutputStream(OutputStream out, Deflater def)
通过调用3参数构造函数DeflaterOutputStream(out,def,false)创建新的输出流实例。
out - 输出流
def - 压缩机(“deflater”)
public DeflaterOutputStream(OutputStream out, boolean syncFlush)
out - 输出流
syncFlush - 如果
true本例的
flush()方法在刷新输出流之前用冲洗模式
Deflater.SYNC_FLUSH刷新压缩器,否则仅刷新输出流
public DeflaterOutputStream(OutputStream out)
通过调用2参数构造函数DeflaterOutputStream(out,false),创建新的输出流实例。
out - 输出流
public void write(int b)
throws IOException
write在
FilterOutputStream
b - 要写入的字节
IOException - 如果发生I / O错误
public void write(byte[] b,
int off,
int len)
throws IOException
write在类别
FilterOutputStream
b - 要写入的数据
off - 数据的起始偏移量
len - 数据的长度
IOException - 如果发生I / O错误
FilterOutputStream.write(int)
public void finish()
throws IOException
IOException - 如果发生I / O错误
public void close()
throws IOException
close在接口
Closeable
close在界面
AutoCloseable
close在
FilterOutputStream
IOException - 如果发生I / O错误
FilterOutputStream.flush() ,
FilterOutputStream.out
protected void deflate()
throws IOException
IOException - 如果发生I / O错误
public void flush()
throws IOException
syncFlush是true时该压缩的输出流构成,该方法首先刷新底层compressor与冲洗模式Deflater.SYNC_FLUSH强制才能彻底流出到输出流的所有未决数据,然后刷新输出流。
否则,此方法仅刷新输出流,而不刷新compressor 。
flush在界面
Flushable
flush在类别
FilterOutputStream
IOException - 如果发生I / O错误
FilterOutputStream.out
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.