Android zip文件压缩

Android中用Java代码实现zip文件解压缩 如果需要下载的文件有很多是中文名的,解压时有中文名的文件出现乱码,试了很多方法不能解决问题。据说有一个Java插件包,用这个插件包可以解决中文名乱码的问题,但不知解压的文件是否要用它提供的类压缩后的文件,是否能解决用rar工具压缩的有中文名的文件,这个还没有试过。 参考资料:@1.http://www.oschina.net/code/snippet_4873_4142 阅读详情

转载地址:http://jondev.net/articles/Unzipping_Files_with_Android_%28Programmatically%29

1、文件解压缩

import android.util.Log;   
import java.io.File;   
import java.io.FileInputStream;   
import java.io.FileOutputStream;   
import java.util.zip.ZipEntry;   
import java.util.zip.ZipInputStream;   
   
/**  
 *  
 * @author jon  
 */   
public class Decompress {   
  private String _zipFile;   
  private String _location;   
   
  public Decompress(String zipFile, String location) {   
    _zipFile = zipFile;   
    _location = location;   
   
    _dirChecker("");   
  }   
   
  public void unzip() {   
    try  {   
      FileInputStream fin = new FileInputStream(_zipFile);   
      ZipInputStream zin = new ZipInputStream(fin);   
      ZipEntry ze = null;   
      while ((ze = zin.getNextEntry()) != null) {   
        Log.v("Decompress", "Unzipping " + ze.getName());   
   
        if(ze.isDirectory()) {   
          _dirChecker(ze.getName());   
        } else {   
          FileOutputStream fout = new FileOutputStream(_location + ze.getName());   
          for (int c = zin.read(); c != -1; c = zin.read()) {   
            fout.write(c);   
          }   
   
          zin.closeEntry();   
          fout.close();   
        }   
           
      }   
      zin.close();   
    } catch(Exception e) {   
      Log.e("Decompress", "unzip", e);   
    }   
   
  }   
   
  private void _dirChecker(String dir) {   
    File f = new File(_location + dir);   
   
    if(!f.isDirectory()) {   
      f.mkdirs();   
    }   
  }   
}   
2、文件压缩

import android.util.Log;   
import java.io.BufferedInputStream;   
import java.io.BufferedOutputStream;   
import java.io.FileInputStream;   
import java.io.FileOutputStream;   
import java.util.zip.ZipEntry;   
import java.util.zip.ZipOutputStream;   
   
   
public class Compress {   
  private static final int BUFFER = 2048;   
   
  private String[] _files;   
  private String _zipFile;   
   
  public Compress(String[] files, String zipFile) {   
    _files = files;   
    _zipFile = zipFile;   
  }   
   
  public void zip() {   
    try  {   
      BufferedInputStream origin = null;   
      FileOutputStream dest = new FileOutputStream(_zipFile);   
   
      ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(dest));   
   
      byte data[] = new byte[BUFFER];   
   
      for(int i=0; i < _files.length; i++) {   
        Log.v("Compress", "Adding: " + _files[i]);   
        FileInputStream fi = new FileInputStream(_files[i]);   
        origin = new BufferedInputStream(fi, BUFFER);   
        ZipEntry entry = new ZipEntry(_files[i].substring(_files[i].lastIndexOf("/") + 1));   
        out.putNextEntry(entry);   
        int count;   
        while ((count = origin.read(data, 0, BUFFER)) != -1) {   
          out.write(data, 0, count);   
        }   
        origin.close();   
      }   
   
      out.close();   
    } catch(Exception e) {   
      e.printStackTrace();   
    }   
   
  }   
   
}   



Android文件压缩的完整指南 在上述代码中,我们创建了一个名为FileCompressionUtil的工具类,其中的compressFile方法用于压缩文件。我们使用了zip4j库提供的ZipFile类来创建一个压缩文件对象,然后调用addFile方法添加要压缩的文件。如果压缩文件加密了,需要先设置密码。在上述示例中,我们假设存在一个名为source.txt的文件,我们首先将它压缩成compressed.zip,然后解压缩到extracted目录下。这里我们使用了一个名为zip4j的第三方库,它提供了压缩和解压缩文件的功能。 阅读详情

相关推荐

Android文件的压缩详解

在上述代码中,我们使用了TarArchiveOutputStream类来创建一个.tar文件,并将源文件添加到压缩文件中。首先,我们创建一个TarArchiveEntry对象,将源文件的信息设置为压缩文件的条目,包括文件大小。然后,我们使用FileInputStream读取源文件的内容,并使用TarArchiveOutputStream将数据写入压缩文件。在上述代码中,我们使用TarArchiveInputStream类来读取压缩文件,并使用getNextTarEntry()方法逐个获取压缩文件中的条目。

TechBurst的博客 697

Android zip、tar+gz 压缩解压

Android压缩和解压,zip、tar、gz解压压缩

aylr2015的博客 2579

zabbix 监控EMC存储

经过搜索,找到了脚本地址,该项目应该是模板原作者创建的,该项目也有zabbix模板,和上面的应该是相同的,我用的是上面的模板。./unity_get_state.py --api_ip='X.X.X.X' --api_port='443' --api_user='zabbix' --api_password='PASSWORD' --storage_name="zabbix web前端配置的主机名" --discovery。修改权限,给zabbix用户执行权限,模板调用时以zabbix用户执行。

wangyfde的专栏 3753

关于安卓文件夹压缩和解压(一)zip处理

安卓文件夹压缩,解压

motosheep的博客 2012

实战:如何用MIPI CSI-2高效传输RAW10图像数据(附带宽优化技巧)

本文深入探讨了MIPI CSI-2协议在RAW10图像数据传输中的高效应用,详细解析了4像素5字节打包机制及其带宽优化技巧。通过动态Lane分配、位深度自适应压缩和虚拟通道交错传输等实战方法,显著提升传输效率,适用于IoT摄像头开发等低功耗场景。

css33的专栏 731

ChatIE:基于ChatGPT的零样本信息抽取实战指南

信息抽取是自然语言处理中的核心任务,旨在从非结构化文本中自动识别并结构化关键信息,如实体、关系及事件。传统方法依赖大量标注数据训练专用模型,流程复杂且成本高昂。随着大语言模型的发展,通过提示工程引导模型理解任务,实现了无需训练数据的零样本抽取能力,极大降低了技术门槛与应用成本。这种范式将信息抽取重构为多轮对话问题,通过分阶段提问引导模型逐步输出结构化结果,在快速原型验证、领域适配及小规模数据探索中展现出显著技术价值。本文以ChatIE项目为例,深入解析如何利用ChatGPT API,通过精心设计的提示词与两

weixin_30540691的博客 403

AndroidZip压缩工具类

Android Zip压缩工具类

工具类KING的博客 826

Dify如何实现自主学习

摘要:Dify通过构建感知-决策-执行-反馈的闭环实现"自主学习",本质是打造能自动获取信息、更新知识库并调整策略的Agent工作流。核心包括:1)建立知识库作为记忆体;2)搭建感知与执行工具获取实时信息;3)通过工作流编排决策"大脑",包含LLM决策节点、行动执行节点和反馈反思节点。典型应用如根据用户反馈优化回答风格,通过存储反思日志到知识库实现持续优化。这种机制使智能体能基于新数据和经验不断自我改进。

专注于技术研发行业技术主要有AI人工智能视觉识别、物联网技术、电商平台、app原生技术、微信小程序、鸿蒙语言开发、办公企业oa、ERP等,致力于做东半球最优秀的程序员 725

Android zip文件压缩与解压

Android zip文件压缩与解压 Android开发中偶尔需要用到zip文件的压缩与解压,正好公司项目需要用到,趁此机会特意总结了下,分享给大家,也是对我学习Android的记录。 zip压缩 Android中的zip压缩主要用到两个类:ZipEntry,ZipOutputStream,ZipEntry类用于保存一些被压缩文件的信息,如文件名、修改时间等等,部分源码如下: class ZipE...

shuaizhigen的博客 1万+

Ansys -PEmag 平面变压器仿真与circuit电路模型验证

ansys 软件集成了电路、磁路、PCB参数提取,结构参数提取等功能仿真,基于内置模块的功能参数的仿真后可以提取出主要关键参数,寄生参数,频域响应参数等。该软件的优势在于能够将所有的仿真参数导出为电路模型文件,可以在自带的模块中仿真也可以导出在其他第三方软件中仿真,比如matlab-simulink文件扥。主要介绍ANSYS插件的使用,对PEmag做了详细使用说明并通过案例得到对用的变压器参数;基于变压器参数再将其磁路模型导入到电路中进行建模仿真,实现PEmag与circuit的联合仿真。

weixin_41609745的博客 3013

GX Works2系统启动失败排查指南:从环境配置到修复方案

在工业自动化与PLC编程调试中,软件启动异常是常见的工程痛点。当开发工具因系统环境配置不当而频繁报错时,往往不是简单的重启能解决的。运行库缺失、区域设置错误、临时目录失效或系统服务被禁用,都可能导致编程软件无法完成初始化流程。掌握从基础环境检查到系统组件修复的系统性排查思路,是提升工控开发效率的关键能力。本文从软件初始化原理出发,结合Windows系统维护实践,梳理一套适用于工业软件启动故障的通用诊断方法,并自然聚焦到三菱GX Works2常见启动失败问题的实际处理,帮助工程师快速定位并解决环境性故障,保障

weixin_42567046的博客 448

android系统解压zip文件,Android解压缩zip文件

期望:使项目apk包中的大文件批量数据可以单独作为一个apk来管理,所以需要将Android assets文件夹下的zip打包文件解压到SDCard上。解压缩的操作由于比较耗时,所以新开一个线程执行以下函数/**将assets对应文件解压到对应的sdcard目录中*/public void unPress2Sdcard(String fileName){try {/**目标路径*/String d...

weixin_34288514的博客 2681

从零开始之stm32之CAN通信

CAN通信极简教程(小白友好版),从小白的视角了解并实现简单的STM32F103的CAN通信,直接上手。

qq_30993593的博客 1306

Android将文件或文件夹压缩成.zip格式的压缩包

1.创建压缩工具类 public class ZipUtils { private static final String TAG = "ZipUtils"; private static boolean isSuccess = false; public static boolean isSuccess() { Log.d(TAG, "isSucc...

chengjun_zhang的博客 1869

ubuntu20.4源码安装最新gcc(gcc V12.2)

Ubuntu20.4自带的gcc为V9.4.0的版本,老版本的gcc存在不支持新版本C语言规范,在配置、编译、安装应用软件或工具时,可能存在不能正确安装的问题。(比如:libpqxx-7.7.4在配置时要求c++17版本的支持,但gcc V9.4.0版本不支持c++17)。因此本文介绍ubuntu20.4的系统下载最新gcc12.2版本源码,并进行本地编译、安装。本节内容包括gcc12.2的必备库安装和gcc12.2安装两部分内容组成。

q544344318的博客 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

安卓Kotlin 压缩多个文件为zip

如果有目录,在entry名中加入/,并且递归分析即可 现在假设imgUrls数组中有一系列图片的url,我们将它下载后按index命名并进行压缩 getHttpContent()函数详见 安卓Kotlin 用GET方法下载数据到ByteArray fun packImgs(f: File):Boolean{ f.parentFile?.let { if(!it.exists()) it.mkdirs() } if(!f.exists()) f.createNewFile() va.

星空千代 888

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Android 将文件压缩成ZIP

Android 将文件压缩成ZIP

专注Android ,直到世界尽头 4055

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

android代码zip怎么用,Android平台实现Zip文件解压缩

[android]代码库在Android平台中如何实现Zip文件的解压缩功能呢? 因为Android内部已经集成了zlib库,对于英文和非密码的Zip文件解压缩还是比较简单的,下面给大家一个解压缩zip的 java代码,可以在Android上任何版本中使用,Unzip这个静态方法比较简单,参数一为源zip文件的完整路径,参数二为解压缩后存放的文件夹。view sourceprint?01priva...

weixin_42359449的博客 305

Android开发中解压和压缩 ZIP 文件全指南

本文介绍了Android中解压ZIP文件的两种方法:使用原生ZipFile类处理普通ZIP文件,以及通过第三方库Zip4j支持密码保护和加密功能。Zip4j功能更全面,支持AES加密、分卷压缩等特性,适合处理安全要求较高的压缩文件。文章提供了完整的代码示例,包括无密码解压、带密码解压以及压缩文件的操作方法。建议开发者优先考虑使用Zip4j库,特别是需要处理加密ZIP文件的场景。

weixin_39339407的博客 1041

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

安卓zip文件压缩RAR解压是一款非常好用的手机压缩解压缩神器,在安卓zip文件压缩RAR解压上我们可以看到很多的实用的功能,软件可以帮助我们更好的处理我们手机中的文件,感兴趣的朋友赶紧下载安卓zip文件压缩RAR解压开始使用吧!安卓zip文件压缩RAR解压软件介绍安卓zip文件压缩RAR解压是一款稳定、快速、高效的android解压工具,zip解压软件支持rar,zip,tar,iso,gz,t...

weixin_39710462的博客 167

android压缩解压缩zip文件格式

android压缩解压缩zip文件格式

xiaocos的专栏 858

Android下文件的压缩和解压(Zip格式)

Zip文件结构ZIP文件结构如下图所示, File Entry表示一个文件实体,一个压缩文件中有多个文件实体。文件实体由一个头部和文件数据组,Central Directory由多个File header组成,每个File header都保存一个文件实体的偏移,文件最后由End of central directory结束。

w2_2015的博客 1万+

android zip压缩文件夹,android zip解压缩(含有子目录)

note: 如果目录中含有中文名称, 要用substr = new String(substr.getBytes("8859_1"), "GB2312");这样的语句转换,否则为乱码/*** 解压缩功能.* 将ZIP_FILENAME文件解压到ZIP_DIR目录下.* @throws Exception*/public int upZipFile(File zipFile, String fold...

weixin_39843338的博客 301

安卓zip解压软件_安卓zip文件压缩RAR解压app下载-安卓zip文件压缩RAR解压手机版3.0.4 最新版...

解压缩软件是一款集合了文件管理、文件分类、压缩、解压缩的全能小工具,操作方便,简单实用,把工作学习资料存在手机,可随身携带随时随地查看、处理工作学习文件,并可随时发送领导,同事同学之间相互分享!安卓zip文件压缩RAR解压手机版介绍一款专业的压缩与解压缩文件管理工具,解压zip可以打开的压缩文件的格式有:Rar , Zip , 7z, bz2 ,bzip2, tab2, taz, gz, gzip...

weixin_39978749的博客 831

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

Android 压缩解压zip文件上次写了个解压缩功能,但有局限性,比如压缩文件xx.zip 里包括子目录的情况下,执行上次解压缩的功能就不能实现我们想要的效果,于是在网上参考了一下java的解压缩功能。对上次解压缩zip功能进行了修改。现在也可以解压 那些包含子目录的zip文件。/*** 解压缩功能.* 将zipFile文件解压到folderPath目录下.* @throws Exception...

weixin_35545135的博客 1090
上一篇: viewpager中彻底性动态添加、删除Fragment
下一篇: Retrofit 2.0 超能实践,完美支持Https传输
MrCoderr
博客等级 码龄12年 39粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值