2014-03-04 483 views
2

一种系统我写意味着我需要确定可能已被使用任何创建的文件/包内容要求许多不同的压缩/存档技术之一 - zip,gzip,rar,tar。这些文件将位于可以运行Windows或Unix/Linux的任何变体的远程系统上,并且可以使用任何压缩/存档技术创建文件(我将在可管理列表中解决以支持)。如何解压缩/解除存档文件/归档的使用各种技术 - ZIP,RAR,Gzip已,焦油

System.IO.Packaging处理什么格式 - 只是zip?

第三方库?这不是我喜欢的选择 - 我需要在未来支持这个系统。

任何指导和建议将非常感激。

+1

附注:我觉得你得到外部库之间的关系,“需要在未来支持”完全落后...更多的代码你自己写更多的代码,你需要支持...... –

+0

嗯,是的,但我是更多指的是免费软件而不是商业库。商业图书馆我会看。我必须支持我交付的系统 - 这意味着我随附的任何库。所以,即使他们是商业图书馆,我的客户在他们失败后也会追随我。 – JeffR

回答

5

System.IO.PackagingZipPackage实现,支持zip文件。任何其他压缩格式本身不支持,您将不得不寻求第三方的支持。

DotNetZip也有zip文件支持,但API可能比建立在.NET ZipPackage更平易近人。 SharpZipLib支持更多文件格式,包括Tar,GZip和BZip2。

还有的leveraging 7Zip和所有的,它支持的格式的选项。

也有很多商业选择:XCeed,Rebex来命名一对夫妇。

没有明确的回答你的问题,你将不得不找出哪些选项是去工作最适合你和你确定要使用的许可模式。