一、AndroidManifest.xml 添加 sd 卡读写权限

 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

二、方法如下:

 public void unzipFile(String zipPtath, String outputDirectory)throws IOException {/*** 解压assets的zip压缩文件到指定目录* @param context上下文对象* @param assetName压缩文件名* @param outputDirectory输出目录* @param isReWrite是否覆盖* @throws IOException*/Log.i(TAG,"开始解压的文件: "  + zipPtath + "\n" + "解压的目标路径:" + outputDirectory );// 创建解压目标目录File file = new File(outputDirectory);// 如果目标目录不存在,则创建if (!file.exists()) {file.mkdirs();}// 打开压缩文件InputStream inputStream = new FileInputStream(zipPtath); ;ZipInputStream zipInputStream = new ZipInputStream(inputStream);// 读取一个进入点ZipEntry zipEntry = zipInputStream.getNextEntry();// 使用1Mbufferbyte[] buffer = new byte[1024 * 1024];// 解压时字节计数int count = 0;// 如果进入点为空说明已经遍历完所有压缩包中文件和目录while (zipEntry != null) {Log.i(TAG,"解压文件 入口 1: " +zipEntry );if (!zipEntry.isDirectory()) {  //如果是一个文件// 如果是文件String fileName = zipEntry.getName();Log.i(TAG,"解压文件 原来 文件的位置: " + fileName);fileName = fileName.substring(fileName.lastIndexOf("/") + 1);  //截取文件的名字 去掉原文件夹名字Log.i(TAG,"解压文件 的名字: " + fileName);file = new File(outputDirectory + File.separator + fileName);  //放到新的解压的文件路径file.createNewFile();FileOutputStream fileOutputStream = new FileOutputStream(file);while ((count = zipInputStream.read(buffer)) > 0) {fileOutputStream.write(buffer, 0, count);}fileOutputStream.close();}// 定位到下一个文件入口zipEntry = zipInputStream.getNextEntry();Log.i(TAG,"解压文件 入口 2: " + zipEntry );}zipInputStream.close();Log.i(TAG,"解压完成");}

三、调用方法:

 private String zipPtath = "/storage/emulated/0/testunzip/test.zip";//压缩包路径private String unzipPath = "/storage/emulated/0/testunzip/";//解压路径unzipFile(zipPtath,unzipPath);

Android 解压 Zip 压缩文件相关推荐

  1. Android 解压 Zip 压缩文件

    文章目录 1.简介 2.代码结构 3.AndroidManifest.xml 添加 sd 卡读写权限 4.MainActivity 文件 5.效果查看 1.简介 Android 解压 SD卡 里的 z ...

  2. java util zip.zipexc,JAVA解压zip压缩文件的实例

    今天在弄一个东西,需要在PL/SQL中解压zip的压缩包,刚开始的时候是想着直接在PLSQL中调用java,在java里面调用unzip的shell命令来解析压缩文件,但是比较悲剧,一直老是失败,在尝 ...

  3. Linux unzip的使用方法 怎么使用unzip解压zip压缩文件

    执行unzip --h可以查看全部unzip的用法 UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send b ...

  4. python h5s文件 压缩_如何用python解压zip压缩文件

    前言:python在办公上非常有用,它可以解压文件,可以处理表格,还可以操作浏览器,只要你能想到的功能,它都能做到,今天笔者就为大家介绍一下如何用处理压缩文件. 打开cmd,输入python3,今天的 ...

  5. python 图像压缩后前端解压_Python在后台自动解压各种压缩文件的实现方法

    1.需求描述 编写一个 Python 程序,每次下载压缩包形式的文件后,自动将内部文件解压到当前文件夹后将压缩包删除,通过本案例可以学到的知识点: os 模块综合应用 glob 模块综合应用 利用 g ...

  6. fatjar打包mysql_一个简单的解压ZIP Excl文件---gt;按时间读取Excle文件,通过Fat jar打成jar相对应的添加到mysql数据库中。 - 明月 - ITeye博客...

    写道 一个简单的解压ZIP Excl文件--->按时间读取Excle文件,通过Fat jar打成jar相对应的添加到mysql数据库中. package common.gaoyang; impo ...

  7. linux常用解压和压缩文件的命令

    linux常用解压和压缩文件的命令 .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ---- ...

  8. Linux 解压,压缩文件--tar 命令

    其实在Linux中,有许多种解压,压缩文件的命令,本博客介绍 tar 命令 如果Linux 系统不能运行tar 命令的朋友,先安装一下: 1)安装 1.apt-get 方式安装: sudo apt-g ...

  9. 递归遍历文件夹,递归解压,压缩文件,写解压和压缩过程的日志,

    前言:好久好久没另写一篇博客了,都是在更新QT常用函数里面内容,这瘟疫影响了我躁动奋进的心,又是大半年没努力了,气人! 这次做的是个多个压缩包 将压缩包里面的内容合并起来 打包成对应的压缩包的工具. ...

最新文章

  1. 下载最新版本Maven 3.3.9 ,检测安装是否成功时发现Java版本JDK却低于1.7时报错
  2. linux mint 下载辅助工具,Linux Mint 18.2 下载工具AxeluGet
  3. 香港居民换领新智能身份证 市民对办理过程表满意
  4. 2020-12-22 一些有用的开源软件
  5. 从体验上拉开差距,Serverless 将成就云计算的下一个 10 年!
  6. java自动依照日期建表,脚本根据一个表中的日期字段填充每月汇总表
  7. 总结php删除html标签和标签内的内容的方法
  8. 将汉字转成拼音字头的方法
  9. centos6 yum源_Centos6安装Zabbix3.4.15注意事项
  10. Day10 sambaNFS(Enginner04)
  11. /var/spool/clientmqueue目录下存在大量文件的原因及解决方法
  12. 关于微星主板安装ubuntu16.04系统连不上网。ifconfig-a 只显示 lo的
  13. Windows系统修改Docker镜像下载地址
  14. 百度离线地图JS API V3.0
  15. 彩虹表MD5破解分析
  16. 一个 Python Bug 干倒了估值 1.6 亿美元的公司
  17. 如何把计算机组成原理、操作系统、数据结构和计算机网络融会贯通,相互联系起来?
  18. java计算机毕业设计猫咪伤患会诊复查医疗平台源代码+数据库+系统+lw文档
  19. Visa领导女性赋权新的十年
  20. 魔方二阶玩法[图解]

热门文章

  1. 2018年7月编程语言TIOBE排行榜
  2. tcp短连接TIME_WAIT问题解决方法大全(1)——高屋建瓴
  3. SSM配置redis
  4. html无序列表透明圆点,html无序列表的类型type
  5. ffmpeg 图片转视频视频合并
  6. 吉大计算机学院宣讲,计算机科学与技术学院“喜迎十九大,争做学校宣传员”寒假社会实践系列报道(十六)...
  7. echarts r 地图_pyecharts自定义地图
  8. matlab小波神经网络,MATLAB 小波神经网络预测求助大神
  9. 如何修改Github仓库的description
  10. HCIP-DATACOM-解题九月部分58+51题