使用 C# 查看压缩包内容

通过 .NET 列出 ZIP、7Z、RAR、TAR、CPIO 和 XAR 中的文件并检查元数据。

.NET 压缩包查看器 API

Aspose.ZIP for .NET 可让 C# 应用程序打开压缩包并遍历其中的条目,无需先解压全部文件。您可以构建压缩包浏览器、上传检查器、内容清单和验证服务,展示名称、路径、大小及格式专用元数据。

API 直接在 .NET 应用程序中运行,不依赖 WinRAR 或 7-Zip。了解通用流程后,请选择与实际容器格式对应的指南。

“查看压缩包”是什么意思?

它是指读取条目索引并展示内部文件和文件夹的信息。根据格式,可获取名称、内部路径、原始及压缩大小、修改时间等元数据。

此操作不会直观呈现内部文档或媒体。如需预览,请将所选条目交给相应的文件查看器。

何时使用压缩包查看器

当应用程序需要在决定解压内容前检查软件包时,可以使用查看功能。常见场景包括文件上传门户、文档接收、备份目录、合规检查和迁移工具。预先列出条目有助于查找文件、执行命名规则和估算处理工作。

如何使用 C# 查看压缩包条目

  1. 打开本地文件或应用程序管理的流。
  2. 识别实际容器格式并选择对应的 API 类。
  3. 打开压缩包但不解压全部条目。
  4. 遍历 Entries 并读取可用元数据。
  5. 安全地显示列表,或在选择性解压前进行验证。

支持的压缩包格式

  • ZIP : 使用以下类遍历条目: Archive
  • 7Z : 使用以下类遍历条目: SevenZipArchive
  • RAR : 使用以下类遍历条目: RarArchive
  • TAR : 使用以下类遍历条目: TarArchive
  • CPIO : 使用以下类遍历条目: CpioArchive
  • XAR : 使用以下类遍历条目: XarArchive

C# 示例:列出 ZIP 中的文件

此示例读取 ZIP 索引并输出名称,不会解压条目:

using Aspose.Zip;
using (var archive = new Archive("input.zip"))
{
    foreach (ArchiveEntry entry in archive.Entries)
        Console.WriteLine(entry.Name);
}

安装 Aspose.ZIP for .NET

将 NuGet 上的 Aspose.ZIP 程序包 添加到 C# 项目,并导入目标格式的命名空间。

程序包管理器控制台

PM> Install-Package Aspose.Zip

生产环境建议

请将元数据和条目名称视为不可信输入。限制大小、数量、嵌套深度、时间和内存。解压前规范化路径,安全处理损坏或加密的数据,对 HTML 名称进行编码,仅解压批准的条目,并释放所有资源。

查看与解压的区别

查看器读取索引以查找、选择和验证条目;解压则会解压数据并写入或流式传输原始文件。直观呈现文档需要适合该文件类型的查看器。

相关压缩包工作流

了解如何 解压文件 、 转换格式 以及 打开受密码保护的压缩包 。

Aspose.ZIP for .NET 资源

压缩包查看器常见问题

1. 如何用 C# 查看压缩包内容?

使用对应格式的类打开,遍历 Entries,并读取名称和元数据。

2. 支持哪些格式?

提供 ZIP、7Z、RAR、TAR、CPIO 和 XAR 专用指南。

3. Aspose.ZIP 会直观呈现内部文档吗?

不会。它负责列出和解压条目;文档呈现需要相应文件查看器。

4. 需要 7-Zip 或 WinRAR 吗?

不需要。支持的格式可直接在 .NET 中读取。

5. 可以检查受保护的压缩包吗?

可以,但需要有效密码和格式专用选项。无法恢复未知密码。