解压ZIP文件和文件复制以及压缩zip(文件夹维度)

Java压缩工具深度对比:zip4j、Apache Commons Compress等四大方案选型指南 文件压缩与解压是数据处理中的基础技术,其核心原理是通过算法减少数据存储空间和传输带宽。在Java生态中,不同的压缩库在性能、功能和支持格式上各有侧重,技术价值体现在提升应用效率、保障数据安全和简化开发流程。常见的应用场景包括Web服务中的文件打包下载、日志归档和通用解压服务。针对ZIP格式处理,zip4j以其友好的API和完整的加密支持脱颖而出;而Apache Commons Compress则凭借其多格式兼容性成为处理异构压缩包的瑞士军刀。本文基于真实生产环境经验,深入剖析了包括JDK原生工具在内的四大主 阅读详情

需要解压的文件类型为zip

此代码经过项目实战,有问题可以评论

public static void  decompressionZIp(String zipPath,String saveFilePath){
    	try (FileInputStream fileIo = new FileInputStream(zipPath);
    	         ZipInputStream zipFileIo =
    	         new ZipInputStream(new BufferedInputStream(fileIo ))) {
    	         ZipEntry entry;
    	        //当读取不到文件时结束
    	        while ((entry = zis.getNextEntry()) != null) {
    	            int size;
    	            byte[] buffer = new byte[2048];
    	            //entry.getName() 此时解压文件的名称
    	            //如果你解压的文件名称不是你想要 你可以自定义
    	            //zip包的第一个文件名:a.pdf  
    	            //你需要的文件名称:b,.pdf 
    	            //File fileOut = new File(saveFilePath+"\\b.pdf");  此时zip包里只能有一个文件  不然会被覆盖
				   //得到正确自己需要的文件需要自己根据实际情况设置文件名称
    	            File fileOut = new File(saveFilePath+"\\"+entry.getName());
    	            try (
    	            FileOutputStream fos = new FileOutputStream(fileOut);
    	            BufferedOutputStream bos =  new BufferedOutputStream(fos, buffer.length)) {
    	            	//当读取到没有的时候结束
    	                while ((size = zis.read(buffer, 0, buffer.length)) != -1) {
    	                	//将读取到的内容写进你保存的路径内
    	                    bos.write(buffer, 0, size);
    	                }
    	                bos.flush();
    	            }
    	        }
    	    } catch (IOException e) {
    	        e.printStackTrace();
    	    }
    }

文件复制

public static void  copyFile(String inPath,String outPath){
	  //输入和输出流
      FileInputStream fileInputStream  = new FileInputStream(inPath);
      FileOutputStream fileOutputStream = new FileOutputStream(outPath);
      //数据接收数组
      byte[] b = new byte[1024];
      //-1代表没有可读写的数据
      while (fis.read(b)!=-1)
      {
          fos.write(b);
      }
      //释放资源
      fis.close();
      fos.close();
}

文件夹压缩成zip

public static void compress(String srcPath , String dstPath) throws Exception{
		//srcPath 为路径   dstPath 为压缩之后的路径   这个方法直接使用必须按照举例参数
		//srcPath  D:/bill/copy/test/testFile/    最后/必须带 不然会认为是test文件夹中的testFile文件
		//srcPath  D:/bill/copy/result/testFile.zip   
        File srcFile = new File(srcPath);
        File dstFile = new File(dstPath);
        if (!srcFile.exists()) {
            throw new FileNotFoundException(srcPath + "不存在!");
        }

        FileOutputStream out = null;
        ZipOutputStream zipOut = null;
        try {
            out = new FileOutputStream(dstFile);
            CheckedOutputStream cos = new CheckedOutputStream(out,new CRC32());
            zipOut = new ZipOutputStream(cos);
            String baseDir = "";
            compress(srcFile, zipOut, baseDir);
        }
        finally {
            if(null != zipOut){
                zipOut.close();
                out = null;
            }

            if(null != out){
                out.close();
            }
        }
    }
Java(112):使用ZIP对多个文件进行压缩与解压(ZipUtil) 使用ZIP对多个文件进行压缩与解压(ZipUtil) 阅读详情

相关推荐

巴西葡萄牙语ZIP文件实用指南

本文还有配套的精品资源,点击获取 简介:"pt_BR.zip" 是一个包含巴西葡萄牙语资源的压缩文件格式,广泛用于软件分发、数据备份和资源共享。本文详细介绍了ZIP文件的压缩算法、格式特点、压缩级别、加密、自解压功能、版本兼容性、国际化内容、数据恢复方法、云服务集成和批处理脚本等方面的知识,为IT专业人士提供了一套处理ZIP文件的全面技能指南。 1. ZIP文件的...

weixin_33193177的博客 1254

ZipEntry 类,zip的压缩与解压

ZipEntry 类是java.util.zip包下的一个类, ZipEntry 类用于表示 ZIP 文件条目。 利用这个类压缩和解压zip文件 具体压缩的例子如下: import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutput...

weixin_45109925的博客 2万+

软件构造课程设计Zip实战:从解压乱码到项目交付全指南

在软件工程实践与课程设计场景中,压缩包(Zip)是项目交付最常见的形式,但解压失败、文件名乱码(如“锟斤拷”)、EOCD记录缺失、jar清单异常等问题,往往成为评审与协作的第一道门槛。理解Zip文件格式的底层原理——包括中央目录结构、编码规则(GBK/UTF-8)以及分卷机制,是高效排障的基础。掌握跨平台解压、编码修复、结构校验等通用技术,不仅能解决课程设计中的提交困境,更能提升软件项目在版本交付、依赖管理、文档规范等环节的工程化水平。从需求分析到测试报告,从README撰写到构建配置,一套完整的项目档案组

weixin_34391445的博客 282

python之zip压缩函数

zip函数将数据进行重新组合,直观上感觉像压缩zip了一样,zip函数在增加了原始数据结构维度的同时,还将内部元素转化为元祖类型

段星星的博客 468

垃圾分类图片数据集处理全攻略:从zip解压到模型训练

在计算机视觉与图像分类任务中,数据往往是决定模型性能上限的关键要素。一个规范的图片数据集,通常以zip压缩包形式分发,既能保留目录结构,又可显著减小传输体积。然而,从解压校验到清洗划分,每个环节都暗藏陷阱——损坏文件、标签乱码、类别不均衡等问题,都可能让后续训练功亏一篑。本文从通用数据处理视角出发,梳理了跨平台解压、完整性校验、标签规范化、分层抽样、数据增强以及baseline训练等完整链路,并结合垃圾分类这一典型应用场景,提供可直接复用的命令与代码。无论你是做毕业设计、竞赛还是工程落地,掌握这套数据预处理

weixin_42526087的博客 287

智能计算系统课程设计:从zip解压到模型部署的完整实战指南

在智能计算系统课程设计与项目交付中,数据压缩包的解压与完整性校验往往是第一道隐形门槛。zip作为一种经典归档格式,其内部结构由本地文件头、中央目录和EOCD结束标记构成,一旦尾部损坏或传输中断,就极易触发“invalid zip archive: could not find eocd”等错误,导致整个项目无法正常导入。此外,跨平台解压时因编码不一致产生的“锟斤拷”乱码、分卷压缩包合并失败、加密压缩包密码恢复等问题,也常让开发者束手无策。理解zip底层原理与常见修复手段,是保障算法工程顺畅落地的基础能力。从

361

java 压缩指定文件,java实现压缩指定文件夹(文件夹包含子文件夹或文件)为zip格式压缩包...

下面为我自己写的一个实例,代码如下:package com.thinkgem.jeesite.test ;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;...

weixin_29452603的博客 513

链接跟踪取数工具实战:从zip解压到自动化数据提取

在投放效果评估与渠道归因分析中,带有utm参数的链接点击数据往往散落在多个平台,手动导出不仅耗时且易出错。通过脚本化工具对跟踪数据源进行自动采集、解析与结构化输出,是提升数据处理效率的关键路径。这类工具常以zip压缩包形式分发,涉及环境依赖、路径配置、数据源鉴权等一系列工程问题。掌握zip压缩包的完整性与安全校验、常见解压故障排查(如EOCD缺失、分卷不全、文件名乱码),以及输出结果的抽样与总量核对方法,能显著降低数据取用过程中的不确定性。进一步将取数流程接入定时任务与Git版本管理,可实现数据的定期自动更

weixin_42546508的博客 270

java压缩传输gzip_java压缩和解压缩Zip、Jar、Gzip文件

我们经常会使用WinZIP等压缩软件将文件进行压缩以方便传输。在java里面也提供了将文件进行压缩以减少传输时的数据量的类,可以很方便的将文件压缩成ZIP、JAR、GZIP等形式,GZIP主要是在Linux系统下的压缩文件。下面主要讲的就是ZIP形式的压缩文件,而JAR、GZIP形式的压缩文件也是类似的用法。ZIP是一种很常见的压缩形式,在java中要实现ZIP的压缩主要用到的是java.util...

weixin_39848347的博客 320

基于计算机视觉的Windows自动化工具openclaw-win:从原理到实战

计算机视觉与自动化技术正深刻改变人机交互方式,其核心在于让机器具备“感知-决策-执行”的能力。通过图像采集与处理算法,程序可以识别屏幕上的特定元素;结合模拟输入技术,便能自动执行点击、拖拽等操作,形成完整的自动化闭环。这一技术栈在软件测试、数据采集、重复性办公任务等领域具有重要价值,能够显著提升工作效率。开源项目openclaw-win正是这一理念的工程实践,它整合了图像识别与模拟操作模块,为开发者提供了一个研究自动化技术的具体样本。项目涉及模板匹配、坐标计算等关键技术点,并需处理屏幕适配、操作延迟等实际问

weixin_28745975的博客 333

工业相机TEC散热技术:从原理到高精度成像的实战解析

本文深入解析了工业相机TEC散热技术的核心原理与实战应用。通过阐述热电制冷器如何利用帕尔帖效应实现精准温控,有效抑制图像传感器暗电流噪声,从而保障高精度成像的稳定性。文章结合工业场景痛点,提供了从TEC选型、系统集成到控制逻辑的完整设计指南,并分享了不同应用场景下的实战案例,是提升工业视觉系统成像质量的关键技术解析。

weixin_29269441的博客 414

GitHub 文件夹下载太繁琐?DownGit 三步快速打包成 ZIP 的完整指南

DownGit 是一个轻量级的 GitHub 资源打包下载工具,它能把你指定的某个仓库文件夹直接打包成 ZIP,让你不必为了拿一个子目录而克隆整个项目。本文从一个真实的踩坑故事讲起,再带你完成三步上手,并顺便说清楚它为什么又快又省。 ## 一个让人抓狂的下午:我只是想要那个 example 文件夹 先讲一段我自己的经历。那天我在 GitHub 上翻到一个挺冷门的开源库,全文只有一处功能我感兴趣

gitblog_00357的博客 189

SQLite性能优化:从WAL模式到内存映射的深度解析

本文深入解析SQLite性能优化策略,重点介绍WAL模式和内存映射技术的应用。通过合理配置WAL日志、同步策略和事务批处理,SQLite的IO吞吐量可提升3-5倍。结合内存映射和缓存优化,性能可进一步提升至默认配置的50倍,适用于高并发读写场景。

weixin_29231027的博客 455

RAR for Android:安卓手机上的全能压缩解压工具

本文介绍 RAR for Android 这款由 RARLAB 官方出品的安卓压缩解压工具。文章首先说明其基本定位与功能,随后重点讲解解压常见格式、创建压缩包、加密保护、分卷压缩和文件管理等核心能力,并通过表格对比 RAR 与 ZIP 两种格式的差异。接着介绍典型使用场景和具体操作步骤,列出使用中的注意事项,最后以问答形式整理文件损坏、密码遗忘、批量解压、分卷合并和乱码等常见问题的解决方法,帮助读者在手机上高效处理各类压缩文件。

迪浦西克的博客 2027

手把手教你学SOME/IP「1.0•概述」

本文介绍了SOME/IP协议的基本概念和主要特点。SOME/IP全称为"Scalable service-Oriented MiddlewarE over IP",是一种面向服务的车载嵌入式通信协议,支持远程过程调用、事件通知等功能。文章指出SOME/IP是AUTOSAR标准的一部分,在车载以太网架构中处于应用层位置,负责服务调度和通信封装。协议具有可扩展性强、资源消耗低、兼容性好等优势,能满足汽车电子领域对实时性、可靠性的严格要求。同时,文章也说明了SOME/IP的正确书写规范,并解释

nihaoljq2010的博客 679

第2.0章 机器人C++学习开篇(一):SLAM为什么使用C++语言及学习路线资料推荐

ROS(机器人操作系统):机器人领域的“操作系统”,提供节点通信、参数管理、工具链支持,是SLAM算法在机器人上部署的核心框架。PCL(点云库):处理三维点云数据的利器,包含滤波、分割、配准等算法,是激光SLAM的核心依赖。Eigen(矩阵运算库):高效的矩阵与线性代数运算库,SLAM中的位姿变换、优化求解都依赖它。Ceres/G2O(优化库):SLAM后端优化的“王牌”,Ceres擅长通用非线性优化,G2O则专为图优化设计,二者是BA( bundle adjustment)等算法的实现基础。

行知SLAM 1244

ZArchiver 解压器:安卓端全能压缩工具详解

ZArchiver 是一款运行在安卓平台上的免费压缩解压工具,支持 ZIP、RAR、7Z、TAR、GZIP、BZIP2、XZ、ISO 等多种主流格式,界面简洁无广告。它不仅能解压和创建压缩包,还内置文件管理、分卷压缩、密码保护等实用功能。本文从功能特性、使用方法、常见问题等角度,全面介绍这款解压器的优势与操作技巧,帮助读者快速上手并解决使用中遇到的典型问题。

迪浦西克的博客 278

YOLOv8 智能交通违章检测 - 压线/越线行驶检测详解

本文提出了一种基于YOLOv8的智能交通违章检测方案,重点解决车辆压线/越线行驶的识别问题。系统采用多技术融合方案:YOLOv8检测车辆、ByteTrack跟踪轨迹、传统或深度学习方法识别车道线,并通过几何计算判断车辆是否违规跨越实线。文章详细介绍了技术难点(如车道线分类、透视变形处理)、判定流程、系统架构和核心代码实现,包括车道线检测、违章逻辑判断和可视化模块。同时指出了现有方案的局限性,建议通过引入逆透视变换和专用车道线分割模型来提升准确率。该纯视觉方案具有低成本、易部署的特点,适用于智能交通监控场景。

u010117029的博客 175

7-Zip与WinRAR深度对比:为什么它是免费压缩工具中的性能王者?

在数字时代,文件压缩工具已成为电脑必备软件。当提到压缩软件时,很多用户会想到WinRAR,但免费开源的7-Zip凭借卓越的压缩率和丰富功能,正逐渐成为更多用户的首选。本文将从压缩性能、功能支持、成本等关键维度,为你揭示7-Zip为何能超越商业软件,成为免费压缩工具中的性能王者。 ## 惊人的压缩率:7-Zip如何做到比WinRAR小10%? 压缩率是衡量压缩工具性能的核心指标,而7-Zip在这

gitblog_00400的博客 1011

前端Three.js面试题及参考答案

渲染循环(Render Loop)是 Three.js 中一个非常重要的概念,它是一个不断重复执行的过程,用于更新和渲染 3D 场景。在每次循环中,渲染循环会更新场景中的对象状态,如位置、旋转、缩放等,然后使用渲染器将更新后的场景渲染成 2D 图像显示在屏幕上。通过不断地重复这个过程,就可以实现动画效果。渲染循环的核心作用是确保场景能够实时更新,给用户带来流畅的视觉体验。如果没有渲染循环,场景将是静态的,不会有任何变化。只有通过不断地更新和渲染,才能让场景中的对象动起来,实现各种动画效果。

大模型大数据攻城狮的专栏 2722

EDEM-fluent耦合时出现的问题及摸索出的解决办法及DPM颗粒信息导出

EDEM-fluent耦合时出现的问题及摸索出的解决办法及DPM颗粒信息导出

zheaa的博客 5750

GitHub 文件夹下载只能靠 git clone?DownGit 三步打包成 ZIP,流量省 90%+

DownGit 是一个 GitHub 文件夹下载与打包工具:把仓库里某个目录、甚至单个文件,在浏览器里直接打包成 ZIP,免去克隆整个仓库的麻烦。它由前端工程师"周大侠啊"在原项目基础上修复资源链接后重新发布,纯前端实现,无需安装任何客户端,部署也简单到一条命令。下面这篇文章会带你从场景、数据、实操到原理把它看个透。 ## 为了 3 个图标,你把 200MB 仓库搬回了家 先讲一个几乎人人踩过

gitblog_00689的博客 181

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

DownGit 使用指南:快速下载 GitHub 指定文件夹的完整教程

你是否也有这样的经历:在 GitHub 上逛到一个宝藏项目,可你需要的只是其中某个插件文件夹,却还是把动辄几百 MB 的整个仓库克隆了下来。下载用掉十分钟,硬盘多出几百兆,最后真正用到的代码还不到十分之一。DownGit 正是一款专门解决这类困扰的 GitHub 资源打包下载工具,它能把仓库里的指定文件夹一键打包成 ZIP,让你"只取所需、不取冗余"。 **它的核心逻辑只有三步:粘贴链接、点击下

gitblog_00560的博客 200

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

7-Zip-zstd:现代压缩算法融合的终极解决方案

你是否曾为传统压缩工具的速度瓶颈感到困扰?或者在使用7-Zip时,渴望获得更快的压缩速度或更好的压缩比?在当今数据爆炸的时代,文件压缩不再仅仅是节省存储空间的手段,更是提升数据传输效率、优化工作流程的关键技术。传统7-Zip虽然功能强大,但面对新兴的Zstandard、Brotli、LZ4等现代压缩算法时,用户往往需要在多个工具间切换,这种割裂的体验严重影响了工作效率。 ## 🔥 压缩技术的革

gitblog_00447的博客 461

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

革命性Windows压缩体验:NanaZip如何用3个维度彻底改变你的文件管理方式

你是否曾经因为Windows自带的压缩功能太过简陋而烦恼?或者觉得传统压缩工具界面陈旧、操作繁琐,与现代Windows系统格格不入?当你在深夜整理大量工作文件,却需要反复在资源管理器和压缩软件之间切换时,那种效率低下的体验是否让你感到无奈? 今天,我要向你介绍一个能够彻底改变这一切的工具——NanaZip。这款基于7-Zip核心的开源压缩软件,不仅继承了强大的压缩能力,更重要的是,它重新定义了W

gitblog_00081的博客 122

如何批量去掉外层文件夹:解析文件提取与目录重构逻辑

为更直观地呈现三种技术路线的差异,以下从操作门槛、执行效率、数据安全三个维度进行横向对比:| 对比维度 | 汇帮文件名提取器 | 压缩包特性方案 | Robocopy命令 |操作门槛| 低(可视化界面) | 低(右键菜单) | 高(需记忆参数) |执行效率| 高(直接移动/复制) | 中(额外压缩/解压开销) | 高(多线程原生支持) |数据安全| 高(具备恢复机制) | 低(同名文件覆盖风险) | 中(/MIR删除风险) |适用场景。

weixin_43864561的博客 45
上一篇: WORD转PDF
下一篇: ORACLE的sql能力提升总结(学到之后会持续记录)
Future_Myself
博客等级 码龄8年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值