package com.ecer.common.utils; import java.io.*; import java.util.zip.Deflater; import java.util.zip.DeflaterOutputStream; import java.util.zip.Inflater; import java.util.zip.InflaterInputStream; /** * Created by JiangChunyan on 2016/11/16. * Java实现数据压缩 * ZLib压缩工具 */ public abstract class ZLibUtils { /** * 压缩 * * @param data * 待压缩数据 * @return byte[] 压缩后的数据 */ public static byte[] compress(byte[] data) { byte[] output = new byte[0]; Deflater compresser = new Deflater(); compresser.reset(); compresser.setInput(data); compresser.finish(); ByteArrayOutputStream bos = new ByteArrayOutputStream(data.length); try { byte[] buf = new byte[1024]; while (!compresser.finished()) { int i = compresser.deflate(buf); bos.write(buf, 0, i); } output = bos.toByteArray(); } catch (Exception e) { output = data; e.printStackTrace(); } finally { try { bos.close(); } catch (
Java实现数据压缩 zlib
最新推荐文章于 2024-08-19 18:42:30 发布
这是一个Java实现的数据压缩工具类,使用ZLib库进行数据的压缩和解压缩。提供了静态方法compress用于压缩字节数组,decompress用于解压缩字节数组,同时也支持从输入流读取并解压缩数据。
摘要由CSDN通过智能技术生成