通过 C# 创建 ZIP 文件

使用 C# 进行高效压缩:减少任何基于 .NET 的应用程序中的文件大小。

如何创建压缩的 Zip 文件夹

将文件或文件夹的内容压缩到 ZIP 存档中是一种常见的做法,以便以更有组织和管理的方式利用空间、保留备份、携带数据和保存数据。此外,稍后将该内容提取到新文件夹或驱动器。因此,对于如何压缩和提取文件,C# ZIP API 使其变得简单。 C# 程序员可以轻松集成 API 并编写代码来压缩图像、PDF 文件、Word 文档、Excel 电子表格甚至整个文件夹。 API 支持 ZipCrypto 生成受密码保护的存档以及使用 AES 加密来加密存档。甚至开发人员也可以设置并行压缩模式或在存档内使用 BZip2、LZMA 或 PPMd 压缩。下面是一些用于创建基于 C# 的 zip 存档的示例代码片段。

C# 创建 ZIP 图像文件存档

使用 API 创建包含 BMP、JPG、GIF、TIFF 等图像的档案非常简单。将图像添加到存档的过程是,为输出图像创建一个 FileStream 对象 ZIP 存档。将源图像打开到 FileStream 对象中。创建 API 的 Archives 类 对象。使用 CreateEntry 方法 将图像添加到存档中。使用 保存方法 创建包含图像的存档。

用于创建包含图像文件的 ZIP 存档的 C# 代码。

  // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
  using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
  {
      //File to be added to archive
      using (FileStream source1 = File.Open(dataDir + "picture123.png", FileMode.Open, FileAccess.Read))
      {
          using (var archive = new Archive(new ArchiveEntrySettings()))
          {
              archive.CreateEntry("picture123.png", source1);
              
              archive.Save(zipFile);
          }
      }
  }

C# 将 PDF 转换为 ZIP 文件

创建 PDF 文档的 ZIP 存档的过程与图像相同。创建Archive对象,使用它的对象,调用以PDF文件为参数的CreateEntry方法,最后调用Save函数来创建zip。 API 还提供了一些压缩 PDF 文件的简单方法,例如将多个文件添加到存档、不压缩存储、添加文件夹等等。

用于创建 PDF 文件的 ZIP 存档的 C# 代码

  var dir = "full directory path";
  using (var arch = new Archive())
  {
    arch.CreateEntry("filename.pdf", dir+"file.pdf");
    arch.Save(dir+"pdf-files-archived_result.zip");
  }

使用密码压缩多个文件

ForAPI 支持使用不同的加密方式归档多个文件和文件夹,例如传统加密、AES128、AES192 和 AES256 加密。除了相关的加密对象之外,过程与图像和 PDF 归档相同。

加密归档多个文件的 C# 代码

  using (FileStream zipFile = File.Open(dataDir + "CompressWithTraditionalEncryption_out.zip", FileMode.Create))
  {
      using (FileStream file1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
      {
      using (FileStream file2 = File.Open(dataDir + "asyoulike.txt", FileMode.Open, FileAccess.Read))
        {
          using (var archive = new Archive(new ArchiveEntrySettings(null, new TraditionalEncryptionSettings("p@s$"))))
          {
            archive.CreateEntry("alice29.txt", file1);
            archive.CreateEntry("asyoulik3.txt", file2);
            archive.Save(zipFile);
          }
                
        }
      }
  }

文档 Aspose.ZIP for .NET 中的压缩函数

Aspose.Zip .NET API 因其在管理复杂的存档压缩方面的强大功能而受到认可,能够以卓越的效率和可靠性在不同的存档格式之间轻松转换。凭借将 ZIP 文件压缩为其他著名存档格式(反之亦然)的能力,开发人员可以确保跨各种平台和应用程序的数据完整性和最佳性能。这种基本的压缩功能简化了数据传输、存储和共享过程,促进与各种软件环境的顺利兼容。通过利用 Aspose.Zip .NET API 的潜力,用户可以轻松操作存档文件并将其与所需的应用程序无缝集成,从而提高整体生产力和工作流程效率。 ZIP 命名空间包含表示 zip 存档和其他常见存档相关实体的类。