欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解C#压缩、解压文件夹/文件(带密码)

程序员文章站 2022-03-02 11:53:36
前言今天梳理一下项目中用到的压缩、解压文件夹或文件的方法,发现因为需求不同,已经用了好几个不同组件。今天就好好整理记录下,别下次遇到需求又重头开始了。dotnetzipdotnetzip是一个开源的免...

前言

今天梳理一下项目中用到的压缩、解压文件夹或文件的方法,发现因为需求不同,已经用了好几个不同组件。今天就好好整理记录下,别下次遇到需求又重头开始了。

dotnetzip

dotnetzip是一个开源的免费类库,主要提供了快速操作zip文件的工具集,vb、c#任何.net语言都可以通过它创建、解压缩zip文件。我使用该类库最主要的目的还是因为它可以创建带密码保护的压缩文件。

只有设置了zip.password = "password"之后,被压缩的文件才会有密码保护

sharpcompress

sharpcompress是用到现在,感觉功能最强大的压缩、解压开源插件。它支持处理zip、rar、7z等多种格式的压缩文件,使用方式也很简单。当然,最让我难受的是创建压缩文件的时候没法设置密码~所以才有了上面dotnetzip的代码。

sharpcompress版本不同,设置archiveencoding的方式也不同,默认设置了utf8防止解压乱码。
通过设置archivetype切换生成不同格式压缩文件

总结

相似的插件还有sharpziplib(支持更多的压缩格式)、sevenzipsharp(专注处理7z格式压缩文件)等,它们也都有各自的优缺点。但总的来说,上面的两个组件已经满足日常工作中的大部分需求,遇到相同问题的朋友可以参考下~

到此这篇关于c#压缩、解压文件夹/文件(带密码)的文章就介绍到这了,更多相关c#压缩、解压文件夹/文件内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关标签: c# 压缩 解压