public class GzipUtils {

    /**
* 对字符串进行gzip压缩
* @param data
* @return
* @throws IOException
*/
public static String compress(String data) throws IOException {
if (null == data || data.length() <= 0) {
return data;
}
//创建一个新的byte数组输出流
ByteArrayOutputStream out = new ByteArrayOutputStream();
//使用默认缓冲区大小创建新的输出流
GZIPOutputStream gzip = new GZIPOutputStream(out);
//将b.length个字节写入此输出流
gzip.write(data.getBytes());
gzip.flush();
gzip.close(); //使用指定的charsetName,通过解码字节将缓冲区内容转换为字符串
return out.toString("ISO-8859-1");
} /**
* 对字符串进行解压缩
* @param data
* @return
* @throws Exception
*/
public static String unCompress(String data) throws Exception {
if (null == data && data.length() <= 0) {
return data;
}
//创建一个新的byte数组输出流
ByteArrayOutputStream out = new ByteArrayOutputStream();
//创建一个byte数组输入流
ByteArrayInputStream in = new ByteArrayInputStream(data.getBytes("ISO-8859-1"));
//创建gzip输入流
GZIPInputStream gzip = new GZIPInputStream(in);
byte[] buf = new byte[1024];
int len = 0;
while ((len = gzip.read(buf)) >= 0) {
out.write(buf, 0, len);
}
// 使用指定的 charsetName,通过解码字节将缓冲区内容转换为字符串
return out.toString("UTF-8");
}

Gzip压缩和解压数据代码

最新文章

  1. STM32之看门狗(独立与窗口)
  2. CSS3 介绍
  3. SQL 之witn as语法
  4. Xilium.CefGlue怎么使用Js调用C#方法
  5. String.Format格式说明(转)
  6. wifi详解(四)
  7. java 实现视频转换通用工具类:视频相互转换-Ffmpeg(三)
  8. [教程] 神器i9100刷基带与内核的方法!(兼带ROOT方法)
  9. iOS UIScrollView的简单使用
  10. Android - 和其他APP交互 - 让其他app启动你的activity
  11. Andrew Stankevich&amp;#39;s Contest (1)
  12. 浅谈linux读写同步机制RCU
  13. linux下载安装phpmyadmin
  14. Dynamics CRM 2015-Ribbon In Basic Home Tab
  15. Mybatis之一级缓存,二级缓存
  16. gradle构建项目失败:Unzipping /home/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9/gradle-3.3-all.zip to /home/.gradle/wrapper/dists/gradle-3.3-all/55gk2rcmfc6p2dg9u9ohc3hw9
  17. Delphi7连接MySql数据库-DBGrid控件显示数据
  18. python自定义函数和推导
  19. CSS分列等高
  20. mysql连接池优化笔记

热门文章

  1. [oldboy-django][2深入django]学生管理(Form)-- 添加(美化Form表单:通过form给前端标签添加属性)
  2. Summary—【base】(JavaScript)
  3. 在控制器“xxxx”上找不到与该请求匹配的操作
  4. [cocos2dx utils] cocos2dx读取,解析csv文件
  5. JDBC 学习笔记(十)—— 使用 JDBC 搭建一个简易的 ORM 框架
  6. Zabbix整合MegaCLI实现物理硬盘的自动发现和监控
  7. bzoj2553【beijing2011】禁忌
  8. php中的对象赋值
  9. bzoj 合集 1079 1791 1876 2208 2306
  10. 外星千足虫(bzoj 1923)