【问题标题】:Default compression for InflaterInputStream/DeflaterOutputStreamInflaterInputStream/DeflaterOutputStream 的默认压缩
【发布时间】:2013-07-04 17:58:36
【问题描述】:
【问题讨论】:
标签:
java
compression
inputstream
default
outputstream
【解决方案1】:
充气机只是一个
new java.util.zip.Inflator()
缓冲区大小为 512 字节。
您可以通过导航到 InflaterInputStream 构造函数的源代码来查看这一点。 IDE 中没有附加 JDK 源代码?停止一切并进行设置,这是必不可少的。
【解决方案2】:
如果您查看source,您会发现它只是创建了java.util.zip.Inflater 的一个实例:
public InflaterInputStream(InputStream in) {
this(in, new Inflater());
usesDefaultInflater = true;
}
处理的唯一区别是,在关闭 InflaterInputStream 时,“默认”Inflater 会被关闭(使用 end()),如果将 Inflater 的实例传递给其中一个,则不会发生这种情况其他构造函数。
大概传递你自己的允许你使用不同的实现,或者重用它等等。