如何使用 C# 将 ZIP 转换为 7ZIP

首先,您需要在 C# 项目中获取并引用 Aspose.Zip 库。您通常可以从 Aspose 网站下载它或使用 NuGet 包(如果有)。 包管理器,搜索 Aspose.ZIP 并安装。您还可以从包管理器控制台使用以下命令。

使用 Visual Studio 包管理 NuGet 包

包管理器控制台命令:

PM> Install-Package Aspose.Zip

通过 C# 将 ZIP 转换为 7ZIP 的步骤

Convertation from ZIP to 7ZIP consist of following steps:

  • Extract archive to intermediate storage
  • Compress extracted data to desired format

系统要求

Before running the conversion example code, make sure that you have the following prerequisites.

  • Microsoft Windows or a compatible OS with .NET Framework, Mono and COM Interop.
  • Development environment like Microsoft Visual Studio.
  • Aspose.Tasks for .NET DLL referenced in your project.

从 ZIP 转换为 7ZIP 的示例代码

使用 C# 将 ZIP 文件转换为 7ZIP 格式是一个结构良好的过程,它利用了 Aspose.Zip 库的功能。要启动此转换,您必须首先在 C# 项目中获取并引用 Aspose.Zip 库。该库可以通过从 Aspose 网站下载来轻松获取,也可以通过 Visual Studio 中的 NuGet 包管理器方便地安装。必须确保您的开发环境(包括 Visual Studio)正确设置并满足系统要求,例如具备 .NET Framework 和 COM 互操作支持。

转换本身涉及两个关键因素阶段:提取和压缩。在第一步中,Aspose.Zip 库用于提取 ZIP 文件的内容,有效地解压缩 ZIP 存档以访问原始文件和目录。成功提取后,利用该库的功能将提取的数据压缩为所需的 7ZIP 格式。此过程可确保打包文件和目录,同时保留其层次结构和关联的元数据。最终,您将结果保存为 7ZIP 存档,其中包含与原始 ZIP 文件相同的内容。此转换为您提供了高效的 7ZIP 存档,适合跨各种应用程序和平台简化存储、传输和兼容性。

将 ZIP 代码转换为各种格式:ZIP 存档通常包含多个记录或文件。要将这个存档转换为 GZ (Gzip)、LZ (Lzip)、Z (Unix Compress)、XZ (XZ Utils) 和 BZ2 (Bzip2) 等格式,常见的方法是首先将内容打包成 TAR(磁带)存档 格式。此过程让人想起 Linux 环境中的典型做法。

在此转换过程中,ZIP 存档中的每个文件或记录首先捆绑在一起形成一个 TAR 存档。该 TAR 存档充当各个文件的容器,保留其原始结构和元数据。一旦数据被封装在 TAR 存档中,应用不同的压缩算法和格式就变得更加容易。

选择 TAR 作为中间格式是因为它的简单性和跨各种类 Unix 操作系统的广泛兼容性。它提供了一种将文件分组在一起的简单方法,而无需直接应用压缩。 TAR 打包完成后,可以对 TAR 存档应用后续压缩操作,生成所需的输出格式,例如 GZ、LZ、Z、XZ 或 BZ2。

从 ZIP 转换为 7ZIP - C#:

    using (SevenZipArchive sevenZipArchive =  new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(1048576))))
    {
        using (Archive archive = new Archive("source.zip"))
        {
            for (int i = 0; i < archive.Entries.Count; i++)
            {
                var ms = new MemoryStream();
                archive.Entries[i].Extract(ms);
                ms.Seek(0, SeekOrigin.Begin);
                sevenZipArchive.CreateEntry(archive.Entries[i].Name.Replace('\\', '/'), ms);
            }
        }

        sevenZipArchive.Save("output.7z");
    }



将 ZIP 转换为 7ZIP 的免费应用程序

查看我们的现场演示,了解 ZIP 到 7ZIP 转换,具有以下优势


一个可靠的Aspose.ZIP库,可以压缩、提取、加密、解密、转换和合并档案。 Aspose.ZIP for .NET API 允许操作各种存档类型,而无需以最少的编码工作进入压缩文件格式的底层复杂性。

其他支持的 ZIP 转换

您还可以将 ZIP 转换为许多其他文件格式,包括下面列出的几种。