.NET 压缩解压库发布,支持进度查看
刚发布了一个 .net压缩解压库,基于SharpZipLib开发 ,支持进度查看,支持路径保持与否。
CL.IO.Zip 是一个基于SharpZipLib的一个压缩和解压的类库,提供给用户在.net环境下使用(VB.NET,C#..等等)当前最新版本为:V1.1.0
github地址:https://github.com/Jarvin-Guan/CL.IO.Zip 标个星
目前版本:v1.1.0。
百度网盘下载地址:http://pan.baidu.com/s/1qWwZ0LI
由云梯工作室提供。欢迎各位自由下载源码,自由使用,2015-6-15。
CL.IO.Zip
CL.IO.Zip 是一个基于SharpZipLib的一个压缩和解压的类库,提供给用户在.net环境下使用(VB.NET,C#..等等)当前最新版本为:V1.1.0
做任何操作之前,请使用单例模式,获取ZipHandler对象。
ZipHandler handler = ZipHandler.GetInstance();
1.压缩
1.1压缩文件夹,并获取压缩进度。
Method:PackDirectory
public void PackDirectory(string strDirectory, string zipedFile, ProcessChange changedDG)
Demo
var fromDic="E:\ZipTest";\\需要压缩的文件夹路径
var toZip="E:\ZipFile.zip";\\生成压缩包的目标路径
handler.PackDirectory(fromDic, toZip, (num) => { Debug.WriteLine("pack num:" + num); });\\num为百分比,最大为100,可在此处写处理逻辑
1.2添加文件到zip文件中。
Method:AddFile
public void AddFile(string filePath, string zipPath,string filePathInZip)
Demo
var filePath="E:\ReadyToAdd.txt";\\需要添加到压缩包的文件路径
var zipPath="E:\ZipFile.zip";\\压缩包文件路径
handler.AddFile(filePath, zipPath, @"123\" + Path.GetFileName(filePath));\\需要添加到压缩包的文件路径
1.3添加文件夹到zip文件中(此函数支持是否保存文件路径的格式。)
Method:AddDirectory
public void AddDirectory(string dicPath,string zipPath,string dicPathInZip,ProcessChange changedDG)
Demo
var dicPath="E:\ReadyToAddDic";\\需要添加到压缩包的文件夹路径
var zipPath="E:\ZipFile.zip";\\压缩包文件路径
var dicPathInZip="ReadyToAddDic";\\需要压缩到压缩包内的相对路径,当前值指的是根目录的ReadyToAddDic
handler.IsKeepPath=true;\\保存原路径
handler.AddDirectory(dicPath, zipPath, dicPathInZip,(num) => { Debug.WriteLine("压缩进度:" + num); });
2.解压
2.1对压缩包进行解压。
Method:UnpackAll
public void UnpackAll(string zipFilePath, string unzipPath, ProcessChange changedDG)
Demo
var fromZip="E:\ZipTest.zip";\\需要解压的压缩文件路径
var toDic="E:\ZipFile";\\解压到的文件夹路径
handler.UnpackAll(fromZip, toDic, (num) => { Debug.WriteLine("解压进度:" + num); });
2.2解压压缩包内的指定文件。
Method:UnpackFile
public void UnpackFile(string zipFilePath,string unzipPath,string filePathInZip)
Demo
var fromZip="E:\ZipFile.zip";
var toDic="E:\UnZipTest";
handler.UnpackFile(fromZip, toDic, @"models/db.js");
2.3解压压缩包内的指定文件夹。
Method:UnpackDirectory
public void UnpackDirectory(string zipFilePath, string unzipPath, string DicPathInZip)
Demo
var fromZip="E:\ZipFile.zip";\\压缩包文件路径
var toDic="E:\UnZipTest";
var dicPathInZip="node_modules";
handler.IsKeepPath=true;\\保存原路径
handler.UnpackDirectory(fromZip, toDic, dicPathInZip);
.NET 压缩解压库发布,支持进度查看的更多相关文章
- snappy压缩/解压库
snappy snappy是由google开发的压缩/解压C++库,注重压缩速度,压缩后文件大小比其它算法大一些 snappy在64位x86并且是小端的cpu上性能最佳 在Intel(R) Core( ...
- linux查看文件夹大小,备份文件夹zip压缩解压
linux查看文件夹大小,备份文件夹zip压缩解压 du -sh : 查看当前目录总共占的容量.而不单独列出各子项占用的容量 du -lh --max-depth=1 : 查看当前目录下一级子文件和子 ...
- Java压缩/解压.zip、.tar.gz、.tar.bz2(支持中文)
本文介绍Java压缩/解压.zip..tar.gz..tar.bz2的方式. 对于zip文件:使用java.util.zip.ZipEntry 和 java.util.zip.ZipFile,通过设置 ...
- Linux压缩解压 tar.gz格式的文件.查看tomcat是否运行
tar命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用 ...
- .NET使用ICSharpCode.SharpZipLib压缩/解压文件
SharpZipLib是国外开源加压解压库,可以方便的对文件进行加压/解压 1.下载ICSharpCode.SharpZipLib.dll,并复制到bin目录下 http://www.icsharpc ...
- Linux文件属性和压缩解压
目 录 第1章 Linux系统文件的属性 1 1.1 命令ls 1 1.2 inode 2 1.3 文件属性 2 1.4 env命令 2 1.5 注意: 2 第2章 ...
- linux中tar及压缩解压命令用法
把常用的tar解压命令总结下,当作备忘: tar 命令可以为Linux的文件和目录创建档案.利用 tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向 档案中加入新的文件.t ...
- WebAPI性能优化之压缩解压
有时候为了提升WebAPI的性能,减少响应时间,我们会使用压缩和解压,而现在大多数客户端浏览器都提供了内置的解压支持.在WebAPI请求的资源越大时,使用压缩对性能提升的效果越明显,而当请求的资源很小 ...
- linux命令:压缩解压命令
压缩解压命令:gzip 命令名称:gzip 命令英文原意:GNU zip 命令所在路径:/bin/gzip 执行权限:所有用户 语法:gzip 选项 [文件] 功能描述:压缩文件 压缩后文件格式:g ...
随机推荐
- github实践操作
一.本地仓库的创建和提交 1.下载并安装Git http://msysgit.github.io/,安装完成后在本地电脑创建一个git仓库并初始化本地仓库 2.在git目录下创建一个Readme.tx ...
- SpringMVC处理脚本,SQL注入问题
SpringMVC处理脚本,SQL注入问题(写的不好勿喷,互相学习) 使用 Filter 来过滤浏览器发出的请求,对每个URI参数请求过滤些关键字,替换成安全的字符.所有请求的 getParamete ...
- schedule和scheduleAtFixedRate区别
需求: 由于系统长期运作,各设备之间产生很多信息,一段时间后需要清除数据 考虑方案: 用schedule还是scheduleAtFixedRate,在此比较分析了下这两个的区别 schedule和sc ...
- GitHub教程--上传项目四步法 GitBash命令行下使用方法
之前就用过GitHub,感觉用GitHub托管自己的代码非常不错.可是之前用的都是窗口化的TortoiseGit,省了很多命令行的操作,但是个人非常喜欢使用命令行,于是,今天就试着用了用GitBash ...
- Leetcode#151 Reverse Words in a String
原题地址 将单词按空格分词,然后倒序拼接即可 代码: void reverseWords(string &s) { vector<string> words; ; ; ; i &l ...
- NYOJ-655 光棍的YY AC 分类: NYOJ 2013-12-29 19:24 224人阅读 评论(0) 收藏
#include<stdio.h> #include<string.h> char str[210]; int max[210][52]={0}; int sum(int n, ...
- phyreengine 3.12.0 安装遇到的问题
发现他们文档都是旧的....略渣阿 需要安装vs2012 update4 vs2013update4 nvdia cg toolkits 3.1 以及 windows SDK 8.1 编译运行第一个s ...
- DevExpress12.2.4 GridControl相关技巧
1.DevExpress12.2.4中,设置GridControl的GridView为可编辑方法如下: gvMainControl.OptionsBehavior.Editable = true; 2 ...
- angularjs取Sevice和directive的引用
取Sevice和directive的引用 3: Grab any Services We can grab a reference to any service using the injector ...
- BeanUtils No value specified for Date的解决方法
/** * ConversionException: No value specified for Date的解决方法 */ ConvertUtils.register(new DateConvert ...