C# 解压.tar文件
时间: 2024-11-03 17:22:38 浏览: 3
在C#中解压`.tar`文件通常需要借助第三方库,因为C#标准库并不直接支持处理这种归档格式。一个常用的库是`System.IO.Compression.TarFile`,它是.NET Framework的一部分,用于读取和操作TAR文件。
以下是一个简单的示例,展示如何使用`TarFile`类解压缩`.tar`文件:
```csharp
using System;
using System.IO;
using System.IO.Compression;
class Program
{
static void Main(string[] args)
{
try
{
string sourceArchive = @"C:\path\to\your.tar";
string destinationDirectory = @"C:\path\to\extract";
// 检查文件是否存在
if (!File.Exists(sourceArchive))
throw new FileNotFoundException("Source file not found.");
// 创建目录(如果不存在)
Directory.CreateDirectory(destinationDirectory);
using (var archive = TarFile.OpenRead(sourceArchive))
{
foreach (var member in archive.Entries)
{
// 提取到指定目录下
string targetPath = Path.Combine(destinationDirectory, member.Name);
member.IsDirectory ? Directory.CreateDirectory(targetPath) : File.WriteAllBytes(targetPath, member.GetContent());
}
}
Console.WriteLine($"Extracted {sourceArchive} to {destinationDirectory}");
}
catch (Exception ex)
{
Console.WriteLine($"Error occurred: {ex.Message}");
}
}
}
```
阅读全文