在实际的项目代码使用过程中,发现如果用Java类库标准指定的GZIPInputStream读取压缩数据解压不能稳定工作,原因不明。反而使用InflaterInputStream可以替代GZIPInputStream稳定、正常工作,现在把基于InflaterInputStream的zip\gzip解压代码工具方法给出:

public static byte[] decompress(byte[] compress) throws Exception {

ByteArrayInputStream bais = new ByteArrayInputStream(compress);

InflaterInputStream iis = new InflaterInputStream(bais);

ByteArrayOutputStream baos = new ByteArrayOutputStream();

int c = 0;

byte[] buf = new byte[BUFFER_SIZE];

while (true) {

c = iis.read(buf);

if (c == EOF)

break;

baos.write(buf, 0, c);

}

baos.flush();

return baos.toByteArray();

}

其中,EOF = -1,BUFFER_SIZE值可以根据自身的项目定制。

android shell 解压zip,Android解压缩ZIP / GZIP数据(基于InflaterInputStream实现)相关推荐

  1. 服务器zip解压php,服务器端解压缩zip的脚本

    html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD ...

  2. c# rar解压大小_C#解压缩Zip,Rar等压缩文件(详细说明)

    其实这个东西网上已经有很多了 给出了一大把  当然我也是在网上找到得 只不过 说明不够详细 经过测试 给出详细的备注: 解压的给的很详细  压缩的基本也一样 只不过参数信息不一样罢了: 利用winra ...

  3. android zip格式应用,Android 压缩解压zip文件

    Android 压缩解压zip文件 上次写了个解压缩功能,但有局限性,比如压缩文件xx.zip 里包括子目录的情况下,执行上次解压缩的功能就不能实现我们想要的效果,于是在网上参考了一下java的解压缩 ...

  4. 7z001怎么解压在安卓手机上面_安卓zip文件压缩RAR解压手机下载-安卓zip文件压缩RAR解压v1.0最新版下载...

    安卓zip文件压缩RAR解压是一款非常好用的手机压缩解压缩神器,在安卓zip文件压缩RAR解压上我们可以看到很多的实用的功能,软件可以帮助我们更好的处理我们手机中的文件,感兴趣的朋友赶紧下载安卓zip ...

  5. cordova 安卓文件多选_安卓zip文件压缩RAR解压软件下载-安卓zip文件压缩RAR解压下载v3.0.4安卓版...

    安卓zip文件压缩RAR解压是一款非常好用的手机压缩解压缩神器,在安卓zip文件压缩RAR解压上我们可以看到很多的实用的功能,软件可以帮助我们更好的处理我们手机中的文件,感兴趣的朋友赶紧下载安卓zip ...

  6. linux备份压缩tgz,linux关于解压和压缩命令 zip rar tar.gz tgz

    linux关于解压和压缩命令 .zip 解压:unzip FileName.zip 压缩:zip FileName.zip DirName .rar 解压:rar -x FileName.zip 压缩 ...

  7. Linux压缩解压tar.gz和zip包命令汇总

    1.tar包和gz包 tar包和gz包是两个不同的文件包,有三种不同后缀..tar .gz .tar.gz tar包:使用tar命令,打包文件或者文件夹,只打包,不压缩 gz包:使用gzip命令,只压 ...

  8. linux环境下常用的打包、压缩、解压命令(tar、gzip、bzip2、zip)

    文章目录 前言 基础概念 打包/归档 压缩 解压 打包压缩 压缩解压命令 总结 前言 经常使用电脑的人常常会接触到压缩文件,不管是软件.数据还是资料,下载之后通常就是一个压缩包,在Windows平台上 ...

  9. linux上 用unzip命令解压带密码保护的 zip 文件报错 unsupported compression method 99

    1.问题: Linux上用 unzip 命令解压带密码保护的 zip 文件报错 unsupported compression method 99 2.解决办法: mac自带的解压工具,无法解密加密的 ...

最新文章

  1. java List集合中contains方法总是返回false
  2. MySQL存储过程---动态的表名
  3. 高维数据使用npy格式保存
  4. tomcat服务器通过配置来部署程序
  5. 前端开始学java_[Java教程]开启前端学习之路
  6. 1007. Maximum Subsequence Sum (25)
  7. androidpn的一次亲密接触(二)
  8. linux 模拟延时和丢包
  9. 17011301(UE4的AnimDynamic)
  10. Eclipse 9.x 10.0 之破解详细步骤
  11. IPhone UC 浏览器基于cookie登录的用户无法退出(无法删除 cookie)问题
  12. python为什么叫胶水语言 举例_python为什么叫胶水语言 python为什么是系统脚本
  13. js 实现繁体和简体之间的转换
  14. 安装opencv3.4遇到Download: opencv_ffmpeg.dll、ippicv等失败的解决方法
  15. IoT企业物联网平台,从设备端到云端业务系统全链路开发实战——实践类
  16. windows与ipad互联传文件
  17. 江苏小高考计算机知识点,江苏化学小高考知识点全
  18. 0成本信息差项目:地图标注该如何做?
  19. Prometheus:监控与告警:10:Node Exporter的Grafana模版
  20. nexus 7 android 8.0,Nexus 7第二代和三星Galaxy Note 8.0哪个好

热门文章

  1. Selenium(上)
  2. 红色买绿色出 简单易操作的买卖点公式 散户小白都能看懂
  3. 毕业论文每章另起一页怎么设置 要求每一章新起一页,怎么设置自动格式呢?
  4. 儿童台灯哪个牌子对眼睛好?2022精选眼科医生推荐护眼灯
  5. 机器学习方法的PPT
  6. 机电工程常用材料(一)
  7. Minesweeper by C
  8. 沟通是管理的核心与灵魂
  9. 什么是UTC时间,为什么系统时间会不准?
  10. 剑指offer 68. 骰子的点数