0
我想打开一个特定的文件并压缩它,并通过UDP发送压缩结果的字节数组。压缩文件并发送它而不保存压缩文件
现在我检查了java zip API,但它只能让我将压缩文件保存到计算机并再次打开并发送它会效率低下。
有没有办法做我所需要的,而无需编写我自己的压缩算法的实现?
我想打开一个特定的文件并压缩它,并通过UDP发送压缩结果的字节数组。压缩文件并发送它而不保存压缩文件
现在我检查了java zip API,但它只能让我将压缩文件保存到计算机并再次打开并发送它会效率低下。
有没有办法做我所需要的,而无需编写我自己的压缩算法的实现?
您可以将ZipOutputStream
包围在ByteArrayOutputStream
的周围,并从ByteArrayOutputStream
中获取字节。 事情是这样的:?
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ZipOutputStream zos = new ZipOutputStream(baos);
//write the entries
zos.close();
byte[] bytes = baos.toByteArray();
你通过“写的条目”的意思,我不想结果写入文件 – omer12433
我的意思写的zip文件的内容,你的情况您要压缩的文件的内容将成为条目。 – tibtof
如果只需要压缩一个文件进行网络传输,那么'DeflaterOutputStream'可能会更好。 – bcrist