java http 压缩_解压HTTP API的GZIP压缩数据
1.对Java后端的请求HttpURLConnection对象中的消息头设置压缩
connection.setRequestProperty("Accept-Encoding", "gzip, deflate");
2.发送请求后获取response中的content-encoding
connection.getContentEncoding(); // 获取content-encoding
3.如果content-encoding == gzip,则将获取到的字节流转为字节数组(压缩),然后再将字节数组解压
public static byte[] uncompresss(byte[] bytes) throws Exception {
ByteArrayOutputStream out = new ByteArrayOutputStream();
ByteArrayInputStream in = new ByteArrayInputStream(bytes);
GZIPInputStream gzip = new GZIPInputStream(in);
byte[] buffer = new byte[1024];
int n;
while((n = gzip.read(buffer)) >= 0) {
out.write(buffer, 0, n);
}
return out.toByteArray();
}
gzip压缩字符串为字节数组
/**
* 将字符串进行gzip压缩,输出压缩后的字节数组
*/
public static byte[] compress(String str, String encoding) throws Exception {
if (str == null || str.length() == 0) {
return null;
}
ByteArrayOutputStream out = new ByteArrayOutputStream();
GZIPOutputStream gzip;
gzip = new GZIPOutputStream(out);
gzip.write(str.getBytes(encoding));
gzip.close();
return out.toByteArray();
}
java http 压缩_解压HTTP API的GZIP压缩数据相关推荐
- Linux(入门基础):04---文件的压缩、解压、打包(gzip、bzip2、xz、tar)
.tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) --------------- .gz 解压 ...
- Python 技术篇-用zipfile库进行zip文件的压缩与解压实例演示,python压缩本地文件夹为zip文件并保留目录结构
首先给大家演示下 zip 文件的解压方法. import zipfiledef zip_extract_to(path_zip, path_aim):'''作用:解压压缩包参数一:压缩包位置参数二:解 ...
- mac java打包文件_解压MAC压缩的zip文件
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import ...
- 算法 - 赫夫曼编码(对字符串进行压缩 与 解压(解码)) - (对文件进行压缩解压)
1.压缩:使用赫夫曼编码进行压缩 题目 构建赫夫曼树 package tree.huffmantree;import java.util.*;public class HuffmanCode {pub ...
- 模块讲解----shutil模块(copy、压缩、解压)
作用与功能 主要用于文件的copy,压缩,解压 导入shuitl模块: import shutil copy方法 1 1.shutil.copyfileobj() 打开file1,并copy写入fil ...
- Linux 中的文件压缩与解压
.tar tar xvf FileName.tar # 解压 tar cvf FileName.tar DirName # 压缩 .gz gunzip FileName.gz # 解压 gzip -d ...
- Linux 文件目录压缩与解压命令
Linux 文件目录压缩与解压命令,融合多部Linux经典著作,去除多余部分,保留实用部分. compress压缩: compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出 &quo ...
- Oka解压专家 Pro for Mac(压缩解压软件)
Oka解压专家 Pro Mac版可以压缩或解压许多不同类型的压缩文件,使用非常简单,只需将要压缩的文件拖放到Dock或主窗口中的FileZip图标即可. Oka解压专家 Pro for Mac安装文件
- 解压专家Oka for Mac(压缩解压软件)中文版
解压专家Oka Mac中文版是一款小巧易用的压缩解压软件,可以压缩或解压许多不同类型的压缩文件.解压专家Oka可以提取大量压缩文件,从ZIP到7Z档案,甚至是分开的档案.只需将文件拖放到图标或主窗口中 ...
最新文章
- vivoNEX3s版本服务器无响应,vivo NEX 3S为什么突然无人问津,这几点原因道出真相...
- 终极解决方式——找到占用U盘的程序
- .NET Core 3.0之深入源码理解Startup的注册及运行
- vue 指令 v-on 事件修饰符-自定义键盘事件
- 罗列几个Android插件化开发框架
- 24矩阵——条件数与方程组的性态、“病态”矩阵与方程、系数矩阵与右端微小扰动情况、条件数的几何意义
- Nginx源码安装(CentOS7)
- 可能是比原版Firefox更好用的个人定制版Firefox
- 联想开机启动项按哪个_联想台式电脑设置第一启动的快捷键是什么
- 点亮LED-STM32电控学习笔记03
- Qt开源作品33-图片开关控件
- 2022年上海市安全员C证最新解析及上海市安全员C证考试技巧
- FPGA学习——数字密码锁(下)
- 中兴新支点安装broadcom博通wifi无线网卡驱动
- 如何通过自学成为一名 Android 应用开发工程师?
- Linux 根目录爆满 解决
- Office各个windows版本支持哪些系统呢
- 轻松通关以太坊--初识以太坊
- 自学网络安全?一般人我还是劝你算了吧
- java怎么做沙子合并,那些java沙子游戏如何跟踪这么多粒子?
热门文章
- 注意力机制 神经网络_图注意力网络(GAT)
- Pytorch MNIST直接离线加载二进制文件到pytorch
- linux进程间的通信(C): 共享内存
- 使用VS2012内建的C++测试架构进行单元测试
- mysql 左连接 重复_mysql左连接重复行
- 怎么把python解释器配置在pycharm中_在PyCharm中配置项目(三):配置Python解释器...
- pythonsqlite3模糊_Python编写通讯录通过数据库存储实现模糊查询功能
- string类有可以调换方向的函数吗_深度剖析C++中的inline函数
- 子集和问题 算法_子集问题 主要是去重算法
- python数据分析神器_太香了!墙裂推荐6个Python数据分析神器!!