是否有一个Java OutputStream过滤器可以像GZipOutputStream那样进行解压缩而不是压缩?

是否有一个Java OutputStream过滤器可以像GZipOutputStream那样进行解压缩而不是压缩?,java,gzip,Java,Gzip,Java的GZipOutputStream的文档说明如下: 此类实现了一个流过滤器,用于在中写入压缩数据 GZIP文件格式 不过,我需要的是一个流过滤器,用于写入解压缩的数据 例如,InflaterOutputStream,它以deflate压缩格式解压缩数据;DeflaterOutputStream,它通过压缩deflate格式压缩数据来实现相反的功能 我试图在内部使用GZipInputStream编写自己的过滤器,但这需要大量的工作,而且,我相信,即使是一个新线程也需要在编写数据时使用它,而

Java的GZipOutputStream的文档说明如下:

此类实现了一个流过滤器,用于在中写入压缩数据 GZIP文件格式

不过,我需要的是一个流过滤器,用于写入解压缩的数据

例如,
InflaterOutputStream
,它以
deflate
压缩格式解压缩数据;
DeflaterOutputStream
,它通过压缩
deflate
格式压缩数据来实现相反的功能

我试图在内部使用
GZipInputStream
编写自己的过滤器,但这需要大量的工作,而且,我相信,即使是一个新线程也需要在编写数据时使用它,而不必在解压缩之前完全缓冲完整的数据,这是出于性能原因而无法做到的

我不能将
InputStream
而不是
OutputStream
包装起来的原因是,我有一个编码链,其中GZip可能只是其中一个(其他的都有我可以使用的
OutputStreamFilter
实现),编码必须以任何顺序执行。

如果有人需要,我知道,但它并没有真正做到“正确”的方式:它只是将写入其中的gzip内容导入
gzip输入流
。。。可用于读取未压缩的内容。。。然后,它读取该数据,并将其写入另一个流。