Java zlib 解压缩 json 字节数组

这篇博客演示了如何在Java中使用zlib库压缩和解压缩json字符串。首先,将字符串压缩成字节流,然后将其存储到自定义对象中,接着使用Gson将对象转换为json字符串。之后,从json字符串中恢复对象,获取字节流并用zlib进行解压缩,最终还原原始字符串。这个过程在业务场景中用于兼容多种压缩算法的传输协议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本demo实现了:

1. 将字符串压缩,转为字节流。

2. 定义对象,将字节流存入对象中。

2. 使用Gson,将对象转为json字符串。

3. 使用Gson将字符串转为对象。

4. 获取对象中的字节流,并进行解压,得到原始字符串。

备注:

主要是实际业务中,传输协议中需要兼容多种压缩算法,故不能对json串进行整体压缩,需要将压缩类型单独定义,再使用单独的key传输压缩后的字节流。


HelloJsonObj:
public class HelloJsonObj {
    String compressType;
    byte[] compressData;

    public String getCompressType() {
        return compressType;
    }

    public void setCompressType(String compressType) {
        this.compressType = compressType;
    }

    public byte[] getCompressData() {
        return compressData;
    }

    public void setCompressData(byte[] compressData) {
        this.compressData = compressData;
    }

}

 

 

 

 

ZlibTest:

import com.google.gson.Gson;

import java.io.ByteArrayOutputStream;
import ja
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值