您可以将多个文件以压缩形式存储为 RAR 存档。在本文中,您将学习如何在 C# .NET 中从压缩的 RAR 存档中解压缩或提取文件。请在以下部分中找到更多详细信息:
- C# Unrar (RAR Extractor or Opener) API – 免费下载
- 在 C# 中从 RAR 解压缩或提取特定文件
- 在 C# 中从 RAR 中提取或解压缩所有文件
- C# 从受密码保护的 RAR 中解压缩特定文件
- 在 C# 中从受密码保护的 RAR 存档中解压缩所有文件
- 获得免费许可证
C# RAR Extractor or Opener to Unrar RAR4 RAR5 – 免费下载
Aspose.ZIP for .NET API 支持从 RAR(RAR4、RAR5)、ZIP、7Z 等压缩格式归档和提取文件。您可以从 下载 下载 API 来安装它部分,或者您可以使用 Microsoft Visual Studio 中的包管理器控制台使用以下命令对其进行配置:
PM> Install-Package Aspose.Zip
在 C# 中从 RAR 解压缩文件
您可以通过以下步骤从 RAR 存档中解压缩或提取特定文件:
- 使用 RarArchive 类对象加载输入 RAR 文件。
- 使用 Create() 方法创建文件。
- 从 RAR 存档中打开特定条目。
- 将提取的数据写入文件。
下面的代码显示了如何使用 C# 以编程方式从 RAR 存档中解压缩或提取特定文件:
// 加载输入 RAR 文件。
using (RarArchive archive = new RarArchive("Sample.rar"))
{
// 使用 Create() 方法创建一个文件。
using (var destination = File.Create("Extracted_File1.txt"))
{
// 从 RAR 存档中打开一个条目。
using (var source = archive.Entries[0].Open())
{
byte[] buffer = new byte[1024];
int bytesRead;
// 将提取的数据写入文件。
while ((bytesRead = source.Read(buffer, 0, buffer.Length)) > 0)
destination.Write(buffer, 0, bytesRead);
}
}
}
从 C# 中的 RAR 存档中提取所有文件
您可以使用以下步骤从 C# 中的 RAR 存档中解压缩或提取所有文件:
- 加载输入 RAR 文件。
- 将所有文件解压缩到一个目录。
以下代码显示了如何在 C# 中以编程方式从 RAR 存档中解压缩所有文件:
// 加载输入 RAR 文件。
RarArchive archive = new RarArchive("Sample.rar");
// 从存档中解压缩或提取所有文件
archive.ExtractToDirectory("extracted");
C# 从受密码保护的 RAR 中解压缩特定文件
您可以使用以下步骤从受密码保护的 RAR 存档中解压缩特定文件:
- 加载使用密码加密的 RAR 文件。
- 指定输出文件的文件名。
- 使用 Extract() 方法解压缩受密码保护的文件。
以下代码说明了如何从 C# 中受密码保护或加密的存档中解压缩特定文件:
// 加载使用密码加密的 RAR 文件。
FileInfo fi = new FileInfo("Data_Password.rar");
using (RarArchive archive = new RarArchive(fi.OpenRead()))
{
// 指定输出文件的文件名。
using (FileStream destination = File.Create("Password_Extracted_File1.txt"))
{
// 提取受密码保护的文件。
archive.Entries[0].Extract(destination, "Aspose");
}
}
C# Unrar 从受密码保护的 RAR 存档中的所有文件
您可以通过以下步骤从 C# 中的密码加密 RAR 存档中提取所有文件:
- 加载加密的 RAR 文件。
- 从存档中解压缩或提取受密码保护的文件。
以下代码片段显示了如何在 C# 中以编程方式从密码加密的 RAR 文件中解压缩所有文件:
// 加载加密的 RAR 文件
RarArchive archive = new RarArchive("Data_Password.rar");
// 从存档中解压缩或提取受密码保护的文件
// 在方法的第二个参数处将密码指定为字符串
archive.ExtractToDirectory("PasswordExtracted" , "Aspose");
C# .NET Unrar API - 获取免费许可证
您可以通过申请 免费临时许可 来不受任何限制地评估 API。
结论
在本文中,您了解了有关如何在 C# 中从 RAR 存档中解压缩或提取文件的所有用例。它还讨论了使用密码保护对 RAR 文件进行加密的场景,您可以将特定文件或所有文件提取到 C# 目录中。此外,您可以访问 API 文档 以查看其他几个功能。如有任何疑问,请随时通过 免费支持论坛 与我们联系。