package com.yangxiutian;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.DataFormatException;
import java.util.zip.Deflater;
import java.util.zip.Inflater;
public class ZLibUtils {
/**
* 用zip算法解压压缩字节
* @param zipByte 输入的压缩字节
* @return 解压好的解压字节
* @throws IOException
*/
public static byte[] decompress(byte[] zipByte) throws IOException {
ByteArrayOutputStream aos=new ByteArrayOutputStream();
Inflater inflater=new Inflater();
inflater.setInput(zipByte);
byte[] buff=new byte[1024];
int byteNum=0;
while(!inflater.finished()){
try {
byteNum=inflater.inflate(buff);
aos.write(buff,0,byteNum);
} catch (DataFormatException e) {
e.printStackTrace();
}
}
return aos.toByteArray();
}
/**
* 用zip算法压缩字节
* @param bytes 输入的待压缩字节
* @return 压缩就绪的字节
* @throws IOException
*/
public static byte[] compress(byte[] bytes) throws IO
用Deflater与Inflater实现字节的压缩与解压
最新推荐文章于 2024-10-09 09:08:27 发布
该博客介绍了如何使用Java中的Deflater和Inflater类进行字节流的压缩和解压操作。提供了两个静态方法,分别用于字节的压缩和解压,以实现内存中的数据压缩需求。
摘要由CSDN通过智能技术生成