彩票走势图

超大压缩包分拆、在C#中合并多个ZIP或TAR文件

翻译|使用教程|编辑:何跃|2022-01-10 14:14:03.923|阅读 619 次

概述:我们生活中经常会遇到多个压缩包分拆和合并的情况,比如一个游戏安装包达50G的时候,厂商经常会将压缩包分拆为50个左右,待下载到本地后执行合并、解压和安装步骤。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

 除了在游戏板块会经常遇到压缩包分拆、合并,在我们企业中也会经常遇到,例如我们网站服务器切换,需要将数百个G的内容打包后传输,如果我们做几百G文件压缩到1个包,那么传输起来会非常麻烦,比如100G资料传输到99.99%的时候突然中断,这无疑让运维突发脑溢血。

那么我们在游戏行业、运维行业等推荐Aspose.ZIP for .NET的这个方案!

当在你的.NET应用程序中处理档案时,你可能需要合并多个ZIP或TAR文件。例如,你可能想从多个档案中提取文件和文件夹,并把它们放到一个单一的档案中。为了实现这一点,本文介绍了如何在C#中合并多个ZIP或TAR文件。我们将涵盖ZIP到ZIP,TAR到TAR,ZIP到TAR,以及TAR到ZIP的合并。

合并ZIP和TAR文件的C# .NET API

为了合并多个ZIP和TAR档案,我们将利用Aspose.ZIP for .NET。它是一个功能丰富的.NET API,允许你创建和操作各种流行的档案格式。你可以下载该API的DLL或者直接使用NuGet安装它。

PM> Install-Package Aspose.Zip
或者直接点击这里下载Aspose.ZIP for .NET类库


在C#中合并多个ZIP文件

让我们开始我们的合并档案与ZIP格式的旅程。我们将采取两个ZIP档案,并收集其条目到一个单一的ZIP文件。以下是在C#中合并多个ZIP文件的步骤。

  • 使用Archive类加载第一个ZIP文件。
  • 同样地,使用Archive类加载第二个ZIP文件。
  • 现在,使用Archive.Entries集合循环浏览第一个ZIP的条目。
  • 使用ArchiveEntry.Open().CopyTo(MemoryStream)方法,将每个ArchiveEntry复制到MemoryStream对象中。
  • 使用Archive.CreateEntry(string, MemoryStream)方法向第二个ZIP添加条目。
  • 使用Archive.Save(string)方法将合并后的ZIP保存为一个单独的文件。

在C#中合并多个TAR文件

现在让我们来看看如何在C#中合并多个TAR档案。以下是实现这一目的的步骤。

  • 使用TarArchive类加载第一个TAR文件。
  • 同样地,使用TarArchive类加载第二个TAR文件。
  • 现在,使用TarArchive.Entries集合循环浏览第一个TAR的条目。
  • 使用TarEntry.Open().CopyTo(MemoryStream)方法将每个TarEntry复制到一个MemoryStream对象。
  • 使用TarArchive.CreateEntry(string, MemoryStream)方法向第二个TAR添加条目。
  • 使用TarArchive.Save(string)方法保存合并后的TAR。

用C#语言将ZIP合并成TAR

在本节中,我们将看到如何在C#中把ZIP文件合并到TAR档案中。以下是执行这一操作的步骤。

  • 使用Archive类加载ZIP文件。
  • 使用TarArchive类加载TAR文件。
  • 现在,使用Archive.Entries集合循环浏览ZIP的条目。
  • 使用ArchiveEntry.Open().CopyTo(MemoryStream)方法将每个ArchiveEntry复制到一个MemoryStream对象。
  • 使用TarArchive.CreateEntry(string, MemoryStream)方法将条目添加到TAR中。
  • 使用TarArchive.Save(string)方法保存TAR文件。



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP