java中怎么实现一个压缩包工具类
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章给大家介绍java中怎么实现一个压缩包工具类,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。package com.tools;import java.io.*;impor
千家信息网最后更新 2026年11月04日java中怎么实现一个压缩包工具类
这篇文章给大家介绍java中怎么实现一个压缩包工具类,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
package com.tools;import java.io.*;import java.util.zip.ZipEntry;import java.util.zip.ZipOutputStream;public class ZipCompress { private String zipFileName; private String sourceFileName; public ZipCompress(String zipFileName, String sourceFileName) { this.zipFileName = zipFileName; this.sourceFileName = sourceFileName; } public void zip( ) throws RuntimeException { ZipOutputStream zos = null; try { zos = new ZipOutputStream(new FileOutputStream(zipFileName)); java.io.File sourceFile = new java.io.File(sourceFileName); compress(sourceFile, zos, sourceFile.getName()); System.out.println("压缩完成" ); } catch (Exception e) { throw new RuntimeException("zip error from ZipCompress", e); } finally { if (zos != null) { try { zos.close(); } catch (IOException e) { e.printStackTrace(); } } } } /** * 递归压缩方法 * * @param sourceFile 源文件 * @param zos zip输出流 * @param name 压缩后的名称 * @throws Exception */ private static void compress(java.io.File sourceFile, ZipOutputStream zos, String name) throws Exception { byte[] buf = new byte[2 * 1024]; if (sourceFile.isFile()) { zos.putNextEntry(new ZipEntry(name)); int len; FileInputStream in = new FileInputStream(sourceFile); while ((len = in.read(buf)) != -1) { zos.write(buf, 0, len); } zos.closeEntry(); in.close(); } else { java.io.File[] listFiles = sourceFile.listFiles(); if (listFiles == null || listFiles.length == 0) { zos.putNextEntry(new ZipEntry(name + "/")); zos.closeEntry(); } else { for (java.io.File file : listFiles) { compress(file, zos, name + "/" + file.getName()); } } } }}调用
//filePath 生成压缩包的地址String filePath = 前缀地址 + 名称+ ".zip";File zip = new File(filePath);zip.deleteOnExit();//path 需要压缩的文件夹ZipCompress zipCompress = new ZipCompress(filePath, path);try { zipCompress.zip();} catch (Exception e) { e.printStackTrace();}关于java中怎么实现一个压缩包工具类就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
工具
内容
名称
地址
更多
帮助
不错
兴趣
前缀
小伙
小伙伴
文件
文件夹
文章
方法
源文件
知识
篇文章
递归
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技工作委员会
重生之互联网科技帝国
互联网和科技技术
科技信息互联网
互联网的科技创新
碳银互联网科技有限公司
润盈互联网科技
互联网高科技企业
互联网 科技服务平台
恒生科技互联网指数分析
央行互联网金融科技公司
全球顶尖互联网科技公司
996高科技互联网公司
威龙国际互联网科技公司
工业互联网等科技实现智能化赋能
世界互联网领先科技成果获奖
启辰互联网科技
上海创道互联网络科技有限公司
西安左小互联网科技有限公司
东风日产互联网科技公司叫什么
互联网电商科技
互联网公司 科技公司
科技创新互联网企业
美国互联网黑科技
广西互联网科技公司
一五八零互联网科技
互联网科技中介
茂名市互联网科技产业园
互联网科技公司有风险吗
华夏恒生科技与互联网科技