使用sharpcompress创建一个7zip的归档文件
本文关键字:一个 7zip 归档文件 sharpcompress 创建 使用 | 更新日期: 2023-09-27 18:16:22
我需要使用SharpCompress: http://sharpcompress.codeplex.com将文件压缩为7zip
我所做的如下:
using (var archive = ZipArchive.Create())
{
archive.AddEntry("CompressionTest.pdb", new FileInfo("CompressionTest.pdb"));
using (Stream newStream = File.Create("CompressionTest212.7z"))
{
archive.SaveTo(newStream, SharpCompress.Common.CompressionType.LZMA);
}
}
压缩过程已成功完成。但是,使用7z (http://www.7-zip.org/download.html)或winrar都无法提取压缩文件。
我不知道是否有人也有同样的问题,并有一个想法如何解决它?
提前感谢。
我是SharpCompress的作者(顺便感谢您尝试),不支持7Zip压缩:http://sharpcompress.codeplex.com/wikipage?title=Supported%20formats
您编写的代码用于创建具有LZMA压缩的标准Zip文件。有可能我的代码没有创建一个合适的zip文件,但也有可能创建的文件不能被所有程序读取。Zip格式允许LZMA压缩,但并不是所有的程序都期望它。PeaZip(基于7Zip归档器代码)可以用LZMA提取Zip文件,但WinRAR不能。
如果您确实需要7Zip格式,我建议您使用其他格式。我个人认为7Zip格式过于复杂,建议使用Zip或Tar格式,然后自行选择压缩格式
SharpCompress不支持7zip压缩。仅解压,参见:http://sharpcompress.codeplex.com/(支持格式表)
您可以使用本机库7zip进行压缩,或者使用开源包装器,例如:http://sevenzipsharp.codeplex.com/