这是一个示例代码
ByteArrayOutputStream baos = new ByteArrayOutputStream(bufSize);
GZIPOutputStream gzos = new GZIPOutputStream1(baos);
gzos.write(...)
...
gzos.write(...)
...
// Would the content get flushed properly?
gzos.flush()
byte[] bytes = baos.toByteArray();
// Use bytes wherever you want
...
// Would this reset things for gzos?
baos.reset()
gzos.write(...)
...
gzos.write(...)
...
bytes = baos.toByteArray();
...
因此,一旦在某处使用了压缩字节数组,我想重置流。我有两个问题。我在某处读到GZIPOutputStream
的flush方法不一定总是刷新内容?这对Java 7来说还是如此吗?如果可以的话,调用ByteArrayOutputStream
对象的重置是否足以重置GZIPOutputStream
对象的内容?