将 GZIPOutputStream 转换为字节数组
Convert GZIPOutputStream to byte array
我已经有一个已定义的 GZIPOutput 流。现在我想把它转换成一个字节数组。
我尝试了下面的代码。但是它给出了一个错误。
GZIPOutputStream zipStream = createGZIP();
byte[] compressedData = zipStream.toByteArray();
错误:无法解析方法 "toByteArray()"
勾选了GZIP compression to a byte array,但是输入的是一个byte[]。我需要转换我已有的 gzip。
I have a GZIPOutput stream which has already defined. Now I want to convert it to a byte array.
您需要修改创建 GZIPOutputStream
的方法,以便将其发送到 ByteArrayOutputStream
。
或者,关闭您正在(大概)写入压缩数据的文件的 FileOutputStream
后,打开它进行输入并将其读入字节数组。
关于您当前的尝试:
GZIPOutputStream zipStream = createGZIP();
byte[] compressedData = zipStream.toByteArray();
这种方法行不通。
GZIPOutputStream
不提供 API 方法来检索压缩数据。
GZIPOutputStream
没有提供 API 方法来检索 GZIPOutputStream
正在写入的流。 (即使有,大多数 OutputStream
类型也不允许您检索数据...)
一般来说,最好找到并阅读您使用的 类 的 javadoc。通过猜测他们提供的方法进行编程很容易导致您在猜测错误时浪费时间。
我已经有一个已定义的 GZIPOutput 流。现在我想把它转换成一个字节数组。
我尝试了下面的代码。但是它给出了一个错误。
GZIPOutputStream zipStream = createGZIP();
byte[] compressedData = zipStream.toByteArray();
错误:无法解析方法 "toByteArray()"
勾选了GZIP compression to a byte array,但是输入的是一个byte[]。我需要转换我已有的 gzip。
I have a GZIPOutput stream which has already defined. Now I want to convert it to a byte array.
您需要修改创建 GZIPOutputStream
的方法,以便将其发送到 ByteArrayOutputStream
。
或者,关闭您正在(大概)写入压缩数据的文件的 FileOutputStream
后,打开它进行输入并将其读入字节数组。
关于您当前的尝试:
GZIPOutputStream zipStream = createGZIP();
byte[] compressedData = zipStream.toByteArray();
这种方法行不通。
GZIPOutputStream
不提供 API 方法来检索压缩数据。GZIPOutputStream
没有提供 API 方法来检索GZIPOutputStream
正在写入的流。 (即使有,大多数OutputStream
类型也不允许您检索数据...)
一般来说,最好找到并阅读您使用的 类 的 javadoc。通过猜测他们提供的方法进行编程很容易导致您在猜测错误时浪费时间。