七zipsharp压缩方法做什么,但为什么

本文关键字:为什么 什么 zipsharp 压缩 方法 | 更新日期: 2023-09-27 18:16:56

在请求时,我想说明我的目标是什么- 创建分割(非)压缩归档,保持目录结构完整

我检查了几个库,但SevenZipSharp似乎是我最接近的方法。

现在我有这样的代码:

public static void PackFiles()
    {
        string dll = @"C:'Users'MyUsername'Downloads'7zip32b'7z.dll";
        SevenZipCompressor.SetLibraryPath(dll);
        SevenZipCompressor compressor = new SevenZipCompressor();
        compressor.ArchiveFormat = OutArchiveFormat.SevenZip;
        compressor.CompressionMode = CompressionMode.Create;
        compressor.TempFolderPath = System.IO.Path.GetTempPath();
        compressor.VolumeSize = 1 * 1024 * 1024;
        //compressor.CompressDirectory(defaultContentFolder, (defaultReadyZipFolder + zipName + ".zip"));
        // THIS ONE IS WORKING, BUT PACKS WHOLE FOLDER INSIDE ARCHIVE..
        string[] files = Directory.GetFiles(defaultContentFolder,"*.*",SearchOption.AllDirectories);
        compressor.CompressFiles(@"C:'Users'MyUsername'Packed'ArchiveName", files);
        Console.WriteLine("Zipped!");
    } 

所以,正如我上面所评论的。当使用compressor.CompressDirectory时,我设法压缩了整个文件夹,然后被打包在另一个被分割的存档中。一点也不漂亮……

所以我想给他目录里的文件列表,把它们打包成一个存档,但它不起作用。

当我调试时,编译器只是执行CompressFiles方法,但根本不输入代码的其他部分,就像它被跳过或什么的…Files参数确实包含了文件路径数组,这部分没问题吧?

你知道这是怎么回事吗?或者用不同的解来检验?

提前感谢!

七zipsharp压缩方法做什么,但为什么

不知道这是否有帮助,但在做了一些挖掘之后我找到了这篇小文章

http://www.cupofdev.com/compress-files-7zip-csharp/

sevenZipCompressor.CompressDirectory();

可能是可以尝试的是压缩目录应该压缩你的目录而不是分割文件

相关文章: