【发布时间】:2017-10-04 03:30:29
【问题描述】:
这是一个示例代码
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 的刷新方法不一定总是刷新内容? Java 7 仍然如此吗?如果可行,调用ByteArrayOutputStream 对象的重置是否足以重置GZIPOutputStream 对象的内容?
【问题讨论】: