效果图

  • 压缩前
  • 压缩后

代码

public class ZipMultiFile {public static void main(String[] args) {// 压缩的文件源File[] srcFiles = { new File("F:\\tmp\\a.png"), new File("F:\\tmp\\b.txt"), new File("F:\\tmp\\c.docx") };// 存放压缩文件的临时文件File zipFile = new File("F:\\tmp\\ZipFile"+System.currentTimeMillis()+".zip");// 调用压缩方法zipFiles(srcFiles, zipFile);}public static void zipFiles(File[] srcFiles, File zipFile) {// 判断压缩后的文件存在不,不存在则创建if (!zipFile.exists()) {try {zipFile.createNewFile();} catch (IOException e) {e.printStackTrace();}}// 创建 FileOutputStream 对象FileOutputStream fileOutputStream = null;// 创建 ZipOutputStreamZipOutputStream zipOutputStream = null;// 创建 FileInputStream 对象FileInputStream fileInputStream = null;try {// 实例化 FileOutputStream 对象fileOutputStream = new FileOutputStream(zipFile);// 实例化 ZipOutputStream 对象zipOutputStream = new ZipOutputStream(fileOutputStream);// 创建 ZipEntry 对象ZipEntry zipEntry = null;// 遍历源文件数组for (int i = 0; i < srcFiles.length; i++) {// 将源文件数组中的当前文件读入 FileInputStream 流中fileInputStream = new FileInputStream(srcFiles[i]);// 实例化 ZipEntry 对象,源文件数组中的当前文件zipEntry = new ZipEntry(srcFiles[i].getName());zipOutputStream.putNextEntry(zipEntry);// 该变量记录每次真正读的字节个数int len;// 定义每次读取的字节数组byte[] buffer = new byte[1024];while ((len = fileInputStream.read(buffer)) > 0) {zipOutputStream.write(buffer, 0, len);}}zipOutputStream.closeEntry();zipOutputStream.close();fileInputStream.close();fileOutputStream.close();System.out.println("压缩成功");} catch (IOException e) {e.printStackTrace();}}
}

原文链接:https://www.cnblogs.com/jpfss/p/9830594.html

Java 多个文件压缩为一个zip文件相关推荐

  1. 后端将多个文件压缩成一个zip文件

    将本地的E:\srcPath中的所有文件,压缩成一个.zip文件并存放在E:\outPath中: public static void main(String[] args) throws IOExc ...

  2. java zip 替换文件_替换一个Zip文件而不解压缩在Java

    我有一个zip文件,我想用另一个文件替换它里面的一个文件.因此,不需要删除zip条目,只需将zip条目的文件替换为另一个条目即可.替换一个Zip文件而不解压缩在Java 这是我试过的. public ...

  3. Java批量导出word压缩后的zip文件

    一.js代码,由于参数比较大所以利用form表单使用post导出 function export_word(){var selectedRows = $("#dg").datagr ...

  4. java 中导出word后压缩文件_Java批量导出word压缩后的zip文件案例

    一.js代码,由于参数比较大所以利用form表单使用post导出 function export_word(){ var selectedRows = $("#dg").datag ...

  5. java实现zip压缩文件(同一文件夹下的多个文件夹打成一个zip包)

    这2个工具类都推荐使用统一个场景的不通过写法 推荐第一种 package com.gblfy.test;import java.io.BufferedInputStream; import java. ...

  6. VBA—压缩文件夹成一个ZIP压缩包

    应用背景:上篇文章说到如果在一项工作中需要自动生成很多文件,然后再压缩 ,然后再进行上传等操作.每次都手动压缩会很麻烦,所以可以加一点代码进行自动压缩Zip文件. 遗留问题:如果只能上传ZIP文件,无 ...

  7. java 打包目录_Java打包文件目录问 zip文件

    Java打包文件目录问 zip文件. /** * 资源打包下载类 * Created by Ruan Banshu on 2015/4/13. */ public class ZipOpUtil { ...

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

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

  9. pythonzip压缩字符串_Python压缩与解压缩ZIP文件的实现方法

    这篇文章主要介绍了Python实现压缩和解压缩ZIP文件的方法,结合具体实例形式分析了Python操作zip文件压缩与解压缩的常用操作技巧,需要的朋友可以参考下 本文实例讲述了Python实现压缩和解 ...

  10. VC++压缩解压zip文件(支持密码)

    只能压缩解压zip格式的,不需要dll或者库文件,核心是HZIP,支持带密码压缩解压(但是有时不完美,属于HZIP本身的问题,请不要纠结这一点). 以下为核心封装文件,建议大家下载源代码查看,下载地址 ...

最新文章

  1. BeginInvoke与EndInvoke方法解决多线程接收委托返回值问题
  2. iOS开发——高级技术地图功能的实现
  3. 学习笔记Hadoop(十)—— Hadoop基础操作(2)—— HDFS常用Shell操作
  4. 探究实现中断下半部分的第四种方式
  5. oracle 存储过程 输入,Oracle 存储过程加密方法
  6. Java中String和byte[]间的转换浅析
  7. 物理层、数据链路层、介质访问控制子层
  8. 如何使用Dockerfile构建镜像
  9. MySQL Cookbook 学习笔记-03
  10. 用JAVA Excel API 实现对Excel表格的读写更新 (转)
  11. Android 框架揭秘 --读书笔记
  12. Idea返回上一步快捷键是什么
  13. 浅谈JavaScript设计模式
  14. 【JY】STKO助力OpenSEES系列:结构模态分析以及动力特性(MDOF与等效SDOF验证)
  15. 职业规划-三大职业生涯阶段
  16. 【雷达与对抗】【2013.12】一种紧凑型超宽带雷达系统
  17. 基于springboot的问卷调查系统的设计与实现
  18. GraphQL和RESTful的区别
  19. 【Linux-MYSQL】数据库的使用
  20. 用Mapviz显示卫星地图轨迹

热门文章

  1. powerdesigner制作数据字典
  2. linux系统实现TTS(文字转语音)功能
  3. 大数据技术架构_大数据架构流程图
  4. 按关键字自动分类文件
  5. 20170216.双目摄像机标定参数说明
  6. excel隐藏行的展现方法
  7. matlab 合并fig文件,Matlab合并多个.fig文件
  8. 一个网站查遍所有英文文章 “会议地点及出版商”(亲测搜了80篇全部有效)
  9. 软件测试工具大全(这可能是目前为止最全的测试工具集合)
  10. 如何看待“大数据杀熟”现象(个人观点,仅供参考)