我用Ionic.Zip压缩目录并将其拆分成几个文件。结果是一堆名为myfile.zip,myfile.z01,myfile.z02,...的文件。
当我使用Windows资源管理器查看zip-File时,我可以看到文件列表。
但是当我尝试使用Windows资源管理器提取存档时,我收到一条消息同一卷不能同时用作源和目的地
当我用7zip打开zipfile时,我收到消息文件myfile.zip无法作为存档打开
创建和提取单个zip-archive工作正常。
以下是使用Ionic.Zip
创建zip存档的代码using (ZipFile zip = new ZipFile())
{
//zip.AlternateEncoding = System.Text.Encoding.UTF8;
zip.AddDirectory(sourceDirectory);
//zip.MaxOutputSegmentSize = 0; //Single file
zip.MaxOutputSegmentSize = 1024 * 1024 * 8; //Splitt up into 8 MB pieces
//zip.Password = zipPassword;
zip.CompressionLevel = Ionic.Zlib.CompressionLevel.None;
zip.CompressionMethod = CompressionMethod.None;
zip.Save(zipFilePath);
segmentsCreated = zip.NumberOfSegmentsForMostRecentSave;
}
return segmentsCreated;
顺便说一下,我尝试了几种CompressionLevels,CompressionMethods的组合,有无密码,......没有变化:(
更新1:
拆箱工程:
using (ZipFile zip = ZipFile.Read(zipFilePath))
{
zip.Password = zipPassword;
zip.ExtractAll(targetDirectory, ExtractExistingFileAction.OverwriteSilently);
}