使用 C# 查看压缩包内容
通过 .NET 列出 ZIP、7Z、RAR、TAR、CPIO 和 XAR 中的文件并检查元数据。
.NET 压缩包查看器 API
Aspose.ZIP for .NET 可让 C# 应用程序打开压缩包并遍历其中的条目,无需先解压全部文件。您可以构建压缩包浏览器、上传检查器、内容清单和验证服务,展示名称、路径、大小及格式专用元数据。
API 直接在 .NET 应用程序中运行,不依赖 WinRAR 或 7-Zip。了解通用流程后,请选择与实际容器格式对应的指南。
“查看压缩包”是什么意思?
它是指读取条目索引并展示内部文件和文件夹的信息。根据格式,可获取名称、内部路径、原始及压缩大小、修改时间等元数据。
此操作不会直观呈现内部文档或媒体。如需预览,请将所选条目交给相应的文件查看器。
何时使用压缩包查看器
当应用程序需要在决定解压内容前检查软件包时,可以使用查看功能。常见场景包括文件上传门户、文档接收、备份目录、合规检查和迁移工具。预先列出条目有助于查找文件、执行命名规则和估算处理工作。
如何使用 C# 查看压缩包条目
- 打开本地文件或应用程序管理的流。
- 识别实际容器格式并选择对应的 API 类。
- 打开压缩包但不解压全部条目。
- 遍历 Entries 并读取可用元数据。
- 安全地显示列表,或在选择性解压前进行验证。
支持的压缩包格式
- 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. 可以检查受保护的压缩包吗?
可以,但需要有效密码和格式专用选项。无法恢复未知密码。