在 .NET 应用程序中集成压缩 API

集成压缩库非常简单,大多数压缩和解压缩操作只需几行代码即可完成。

单文件压缩 - C#

  var dir = "Path/To/Directory/";
  using (var arch = new Archive())
  {
      arch.CreateEntry("filename.dat", dir + "file.dat");
      arch.Save(dir + "result.zip");
  }

此代码创建一个名为 "result.zip" 的 ZIP 存档,并向其中添加一个文件。代码执行以下操作:

  • 目录路径 : 定义一个变量 dir 并为其赋值为包含文件所在完整目录路径的字符串。
  • 创建存档 : 代码使用 using 结构,确保在代码块执行完成后自动释放存档对象 (arch)。
  • 向存档添加文件 : 在 using 代码块内,代码创建一个存档条目,名称为 "filename.dat"。CreateEntry 方法接受两个参数:
    - 第一个参数指定存档内的条目名称 "filename.dat"。
    - 第二个参数提供将添加的实际文件路径("dir + file.dat"),此路径将目录路径 dir 与文件名 "file.dat" 组合在一起。
    由于未指定压缩方法,文件将使用默认的 Deflate 算法进行压缩。
  • 保存存档 : 最后,代码调用存档对象 (arch) 的 Save 方法,将新创建的 ZIP 存档保存为 "result.zip",存放在 dir 指定的目录中。

  
 

Aspose.ZIP for .NET 是一个灵活的标准 ZIP 格式文档压缩和存档操作 API。该 API 使 .NET 应用程序能够实现文件压缩/解压缩、存档文件和文件夹,以及存档加密。此 API 支持所有常见的存档格式:ZIP、RAR、7Zip、GZIP、BZ2,以及许多 Linux 存档格式:CPIO、TAR、Lzip、Bzip2、XZ、Z。它提供用户定义的密码保护,并支持使用 ZipCrypto 或 AES(AES128、192 和 AES256)进行传统加密。

Aspose.Zip 提供用于文件压缩和存档的 .NET API。该库使开发人员能够在 .NET 框架内高效地压缩、存档和提取文件,确保高效的集成和性能。
.NET 平台已成为从 Web 开发到企业解决方案的多功能基础。Aspose.Zip 提供用于文件压缩任务的工具,支持在 .NET 框架内高效且可靠的开发。

如何使用 .NET 提取 RAR

使用 Aspose.Zip for .NET,您可以轻松操作 RAR 存档,包括将其内容提取到目录。此过程涉及初始化 RarArchive 类,加载 RAR 文件,并将其条目提取到目标目录。

Aspose.Zip for .NET 提供了高性能且可靠的接口,用于处理各种存档格式。以下示例演示如何将 RAR 存档提取到指定目录。

通过 .NET 提取 RAR 存档

using (RarArchive archive = new RarArchive("archive.rar"))
{
    archive.ExtractToDirectory("extracted");
}

代码示例展示了如何使用 Aspose.Zip API for .NET 提取 RAR 存档。该脚本将 RAR 存档中的所有条目提取到指定目录,确保高性能和灵活性。

如何使用 C# 转换 Zip

在 .NET 中,您可以使用第三方库,如 SevenZipArchive,将 ZIP 存档转换为 7Z 格式。此过程涉及从 ZIP 存档提取数据,并在新的 7Z 存档中创建相应条目。

SevenZipArchive 提供了一个简单且灵活的接口,用于操作存档格式,包括支持压缩和结构化数据。以下示例演示如何通过提取 ZIP 存档的条目并将其添加到 7Z 存档来完成转换。

从 ZIP 转换为 7Z via .NET

  using (SevenZipArchive sevenZipArchive =  new SevenZipArchive())
  {
    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");
  }

代码示例展示了如何通过 C# 将 ZIP 存档转换为 7Z 格式。利用 SevenZipArchive 类,该脚本提取 ZIP 条目并在 7Z 存档中创建相应条目。

其他支援的 Aspose.ZIP for .NET API 功能

使用 Aspose.ZIP C# 庫來轉換、合併、編輯 zip 文件文檔、從檔案中提取資料等等!

  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: