压缩rar | 解压rar | 查看rar包 | 压缩zip | 解压zip | 查看zip包 | |
WinRAR (GUI程序) | | | | |||
rar (命令行程序) | | | | |||
wzzip wzunzip (命令行程序) |
| | | | ||
7z (命令行程序) | | | | | ||
Unrar (非托管dll) | | | ||||
Ionic Zip (托管dll) | | | |
比较:
- WinRAR无疑是Windows平台上最强大的压缩解压缩工具,可以解开各种格式的压缩包。缺点是难以列出压缩包内文件被程序使用。
- rar.exe是WinRAR安装目录下的命令行程序,可惜只支持rar格式。
- wzzip和wzunzip是WinZip安装之后再补充安装的,比较麻烦。暂不研究了。
- 7z格式太小众了,而且它追上WinRAR还需要时日。
- Unrar是rarlab开发的native library,效率高,但dllImport只能使用常量路径,dll加载的时候可能会遇到麻烦。 我试了一下解压缩API,竟然不好用竟也不报错,遂抛弃,选择命令行的rar.exe。
- Ionic Zip是codeplex上评分很高的一个项目,C#写的managed library,接口友好,文档齐备。
还有两个不得不说的:SharpZipLib和.NET自带的System.IO.Packaging,但这两者调用步骤比较晦涩。
因为rar是非开放标准,所以处理rar的类库要比处理zip少得多,如果不知道打什么包合适,就选择zip吧。
我倾向使用Ionic Zip和rar.exe的组合来解决压缩和解压缩rar/zip的问题。