java中怎么实现一个压缩包工具类
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章给大家介绍java中怎么实现一个压缩包工具类,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。package com.tools;import java.io.*;impor
千家信息网最后更新 2025年12月03日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安全错误
数据库的锁怎样保障安全
电网网络安全政策
秦淮区网络软件开发
dns服务器地址可以多个电脑吗
程序员软件开发完后还有事做吗
pubg一直处于服务器状态
南阳租房软件开发
网维服务器配置
数据库关系代数
服务器内存那个好
一种基于gps的空间数据库
网络安全与监管加码
重庆武隆食堂配送软件开发
qq联系赵女士 网络安全
最便宜服务器电脑组装
评论系统 数据库设计
网络安全设置级别太高
马士兵oracle数据库
随着网络技术的快速发展英文
泊头手机软件开发
互联网科技有哪些岗位
久大网络技术怎么样
湖北服务器电源哪家有卖
浙江信息化软件开发活动方案
淄博至尊宝网络技术
网络安全摆渡机价格
信锐交换机软件开发工程师
服务器 自动化管理
流水账单数据库表设计
内网数据库快
哪一行软件开发轻松