
在 C# 中将 ZIP 转换为 TAR
ZIP 归档格式是众所周知的,广泛用于将文件和文件夹压缩成单个压缩文件。而 TAR 是另一种基于 UNIX 的文件格式,可将各种文件压缩到一个位置。事实上,文件压缩是任何在线业务中必不可少的组件,因为它可以减小文件大小并使文件在 Internet 上的传输速度更快。大多数时候,TAR 是首选,因为它保留了权限和规定。在这篇博文中,我们将学习如何在 .NET 应用程序中以编程方式将 ZIP 转换为 C# 中的 TAR。
我们将介绍以下部分:
ZIP 到 TAR 转换器 API 安装
我们将使用这个 .NET ZIP 库 以编程方式实现 ZIP 到 TAR 的转换。它是一个轻量级的库,用于压缩和解压缩各种类型的存档格式。
您可以通过下载 DLL 文件或通过在 NuGet 包管理器中运行以下命令来安装此 API。
Install-Package Aspose.Zip
以编程方式在 C# 中将 ZIP 转换为 TAR
ZIP to TAR 转换器 API 提供将 ZIP 格式转换为 TAR 文件格式的方法和属性。但是,您可以浏览可用方法列表 此处。
按照以下步骤实现此转换:
- 实例化 Archive 类的实例并加载源 ZIP 文件。
- 创建 TarArchive 类的对象以访问 TAR 功能。
- 创建 ArchiveEntry 类的对象以访问 ZIP 中的每个 ArchiveEntry。
- 初始化 MemoryStream 类的对象并使用 entry.Open().CopyTo(mem) 方法复制条目。
- 调用 CreateEntry 方法在 TAR 存档中创建单个条目。
- 通过调用 SaveGzipped 方法保存 TAR 文件。
将以下代码段复制并粘贴到您的主文件中并运行服务器:
// 实例化 Archive 类的实例并加载源 ZIP 文件
using (Archive source = new Archive("CompressDirectory_out.zip"))
{
// 创建 TarArchive 类的对象以访问 TAR 功能
using (TarArchive tar = new TarArchive())
{
// 创建 ArchiveEntry 类的对象以访问 ZIP 中的每个 ArchiveEntry
{
if (!entry.IsDirectory)
{
// 初始化 MemoryStream 类的对象并使用 entry.Open().CopyTo(mem) 方法复制条目
MemoryStream mem = new MemoryStream();
entry.Open().CopyTo(mem);
// 调用 CreateEntry 方法在 TAR 归档中创建单个条目。
tar.CreateEntry(entry.Name, mem);
}
}
// 通过调用 SaveGzipped 方法保存 TAR 文件。
tar.SaveGzipped("result.tar.gz");
}
}
获得免费许可证
您可以使用 免费临时许可证 来试用 API,而不受评估限制。
加起来
我们将在这里结束这篇博文。我们已经使用这个 .NET ZIP 库 实现了在 C# 中将 ZIP 转换为 TAR 的过程。此外,如果您想在 .NET 应用程序中集成 ZIP 到 TAR 转换 API,本文肯定会帮助您。此外,您可以访问该库的 文档 以了解其他方法和属性。最后,conholdate.com 正在撰写有关其他主题的新博客文章。因此,请保持联系以获取定期更新。
问一个问题
您可以在我们的 论坛 上告诉我们您的问题或疑问。