摘要:首先创建一个工具类,定义好接口,这里的参数多个文件的压缩后的文件名下面是代码,注释已经很详细了构建压缩文件初期化流构建流对象循环处理传过来的集合获取目标文件定义对象赋予流对象属性缓冲构建流对象关闭关闭最后关闭流
首先创建一个工具类,定义好接口,这里的参数
1:fileList:多个文件的path+name
2: zipFileName:压缩后的文件名
下面是代码,注释已经很详细了
public class ZIPUtil { public static String createZipFile(ArrayListfileList, String zipFileName) { if(fileList == null || fileList.size() == 0 || CommonUtil.isEmpty(zipFileName)){ return null; } //构建压缩文件File File zipFile = new File(zipFileName); //初期化ZIP流 ZipOutputStream out = null; try{ //构建ZIP流对象 out = new ZipOutputStream(new FileOutputStream(zipFile)); //循环处理传过来的集合 for(int i = 0; i < fileList.size(); i++){ //获取目标文件 File inFile = new File(fileList.get(i)); if(inFile.exists()){ //定义ZipEntry对象 ZipEntry entry = new ZipEntry(inFile.getName()); //赋予ZIP流对象属性 out.putNextEntry(entry); int len = 0 ; //缓冲 byte[] buffer = new byte[1024]; //构建FileInputStream流对象 FileInputStream fis; fis = new FileInputStream(inFile); while ((len = fis.read(buffer)) > 0) { out.write(buffer, 0, len); out.flush(); } //关闭closeEntry out.closeEntry(); //关闭FileInputStream fis.close(); } } }catch (IOException e) { e.printStackTrace(); }finally{ try { //最后关闭ZIP流 out.close(); } catch (IOException e) { e.printStackTrace(); } } return zipFileName; } }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/73356.html
摘要:使用文件与以下好处安全。包作为内嵌在平台内部处理的标准,能够在各种平台上直接使用命令详解创建文件该命令没有显示压缩过程,执行结果是将当前路径下的路径下的全部内容生成一个文件。使用如下命令即可将清单文件中的对提取到文件中。 JAR,Java Archive File,Java档案文件。JAR文件是一种压缩文件,与ZIP压缩文件兼容,通常称为JAR包。JAR文件中默认包含了一个名为META...
摘要:下载下载下载用户信息表必要的说明目前存在下载中文的文件名出现乱码,但好在不影响其中的内容,只是文件名会乱码。问题链接引用实现将文件或者文件夹压缩成 需求 导出文件后存留在了服务器中,需要提供下载按钮,点击后可下载到本地;(因为涉及多个文件,下载前先将文件进行压缩,提供下载压缩文件) 效果预览 showImg(https://segmentfault.com/img/bVbk4Xm?w=...
阅读 620·2021-11-24 09:39
阅读 2925·2021-11-23 10:06
阅读 947·2021-10-08 10:05
阅读 716·2019-08-30 10:49
阅读 1664·2019-08-29 14:08
阅读 1270·2019-08-29 12:48
阅读 3288·2019-08-26 14:04
阅读 3566·2019-08-26 13:50