ZIP 文件包含一个或多个压缩文件或文件夹以充当单个文件。这些被广泛用于节省存储空间和提高计算机的性能。您可以有效地将 ZIP 存档中的文件和文件夹从一个位置传输到另一个位置。作为 C# 开发人员,您可以轻松呈现 ZIP 存档并以编程方式查看其内容。本文将重点介绍如何使用 C# 呈现 ZIP 档案。
本文讨论/涵盖了以下主题:
- C# API 查看 ZIP 文件
- 以 HTML 格式呈现 ZIP 档案
- 以 HTML 格式呈现 ZIP 档案中的特定文件夹
- 以 PDF 格式查看 ZIP 档案的内容
- 将 ZIP 档案渲染为 JPG
- 从 ZIP 档案中获取文件夹列表
- 渲染和重命名 ZIP 文件
C# API 查看 ZIP 文件
对于 ZIP 文件的呈现,我将使用 GroupDocs.Viewer for .NET API。它是一个强大的文档查看器 API,支持 170 多种文件和文档类型。 API 提供最灵活的文档查看解决方案,无需安装任何外部软件即可在任何地方呈现和显示广泛使用的文件格式。它还使您能够轻松快速地查看 PDF、HTML、XML、Microsoft Office Word、Excel 工作表、PowerPoint 演示文稿、Outlook 电子邮件、Visio 图表、项目、元文件、图像和各种其他文件格式,并且减少编程风险。
您可以下载 API 的 DLL 或使用 NuGet 安装它。
Install-Package GroupDocs.Viewer
以 HTML 格式呈现 ZIP 档案
您可以按照下面给出的简单步骤以 HTML 格式呈现 ZIP 文件:
- 创建 Viewer 类的实例
- 提供输入文件路径
- 创建 HtmlViewOptions 类的实例
- 提供输出文件路径
- 调用 View() 方法并传递 HtmlViewOptions
以下代码示例展示了如何使用 C# 以 HTML 格式呈现 ZIP 文件。
// 初始化查看器
Viewer viewer = new Viewer("C:\\Files\\sample.zip");
// 定义 HTML 视图选项
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources("C:\\Files\\output.html");
viewOptions.RenderToSinglePage = true;
// 创建视图
viewer.View(viewOptions);
Viewer 类是提供控制文档呈现过程的功能的主要类。此类的 View() 方法创建所有文档页面的视图。
HtmlViewOptions 类提供了将文档呈现为 HTML 格式的选项。 ForEmbeddedResources 构造函数方法创建 HtmlViewOptions 类的新实例,用于渲染成带有嵌入资源的 HTML。如您所见,我在代码示例中提供了输出文件路径。
您可以在文档中找到有关“Document HTML Viewer”的更多详细信息。
以 HTML 格式呈现 ZIP 档案中的特定文件夹
您可以按照以下给出的简单步骤以 HTML 格式呈现 ZIP 文件中可用的特定文件夹:
- 创建 Viewer 类的实例
- 提供输入文件路径
- 创建 HtmlViewOptions 类的实例
- 提供输出文件路径
- 设置要渲染的文件夹名称
- 调用 View() 方法并传递 HtmlViewOptions
以下代码示例展示了如何使用 C# 从 HTML 中的 ZIP 文件呈现特定文件夹。
// 初始化查看器
Viewer viewer = new Viewer("C:\\Files\\sample.zip");
// 定义 HTML 视图选项
HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources("C:\\Files\\output.html");
// 设置文件夹名称
viewOptions.ArchiveOptions.Folder = "ThirdFolderWithItems";
// 创建视图
viewer.View(viewOptions);
ArchiveOptions 类为归档文件的呈现提供了选项。它使您能够通过提供存档中可用文件夹的名称来呈现 ZIP 存档中的特定文件夹。
以 PDF 格式查看 ZIP 档案的内容
您可以按照以下简单步骤将 ZIP 文件呈现为 PDF 文档:
- 创建 Viewer 类的实例
- 提供输入文件路径
- 创建 PdfViewOptions 类的实例
- 提供输出文件路径
- 调用 View() 方法并传递 PdfViewOptions
以下代码示例展示了如何使用 C# 以 PDF 格式呈现 ZIP 文件。
// 初始化查看器
Viewer viewer = new Viewer("C:\\Files\\sample.zip");
// 定义 PDF 视图选项
PdfViewOptions options = new PdfViewOptions("C:\\Files\\output.pdf");
// 创建视图
viewer.View(viewOptions);
PdfViewOptions 类提供了将文档呈现为 PDF 格式的选项。您可以在文档中找到有关“文档 PDF 查看器”的更多详细信息。
将 ZIP 档案渲染为 JPG
您可以按照以下简单步骤将 ZIP 文件渲染为 JPG 图像:
- 创建 Viewer 类的实例
- 提供输入文件路径
- 创建 JpgViewOptions 类的实例
- 提供输出文件路径
- 调用 View() 方法并传递 JpgViewOptions
以下代码示例展示了如何使用 C# 以 JPG 图像呈现 ZIP 文件。
// 初始化查看器
Viewer viewer = new Viewer("C:\\Files\\sample.zip");
// 定义 JPG 视图选项
JpgViewOptions options = new JpgViewOptions("C:\\Files\\output_page_{0}.jpg");
// 创建视图
viewer.View(viewOptions);
您可以将文档呈现为 JPG 或 PNG 图像格式。 JpgViewOptions 类提供了将文档呈现为 JPG 格式的选项。同样,PngViewOptions 类提供了将文档呈现为 PNG 格式的选项。
您可以在文档中找到有关“Document Image Viewer”的更多详细信息。
从 ZIP 档案中获取文件夹列表
您可以按照以下步骤以编程方式从 ZIP 文件中获取所有文件夹和子文件夹的列表:
- 创建 Viewer 类的实例
- 提供输入文件路径
- 创建 ViewInfoOptions
- 通过调用 GetViewInfo() 方法创建 ViewInfo 实例
- 获取 ArchiveViewInfo
- 显示结果
以下代码示例展示了如何使用 C# 从 ZIP 文件中获取文件夹列表。
// 初始化查看器
Viewer viewer = new Viewer("C:\\Files\\sample.zip");
// 创建视图信息选项
ViewInfoOptions viewInfoOptions = ViewInfoOptions.ForHtmlView();
ViewInfo viewInfo = viewer.GetViewInfo(viewInfoOptions);
Console.WriteLine("File type: " + viewInfo.FileType);
Console.WriteLine("Pages count: " + viewInfo.Pages.Count);
Console.WriteLine("Folders: ");
Console.WriteLine(" - /");
string rootFolder = string.Empty;
viewInfoOptions.ArchiveOptions.Folder = rootFolder;
// 获取查看信息
ArchiveViewInfo viewFolderInfo = viewer.GetViewInfo(viewInfoOptions) as ArchiveViewInfo;
foreach (string subFolder in viewFolderInfo.Folders)
{
Console.WriteLine($" - {subFolder}");
PrintFolders(viewer, subFolder);
}
ViewInfoOptions 类提供用于检索视图信息的选项。它提供了各种方法来获取特定格式的视图信息。我使用 ForHtmlView() 方法初始化 ViewInfoOptions 类的新实例,以在呈现为 HTML 时检索有关视图的信息。
ViewInfo 类提供通用文档的视图信息。 Viewer 类的 GetViewInfo() 方法返回有关视图的信息和特定于文档的信息。
ArchiveViewInfo 类提供存档文件的视图信息。
渲染和重命名 ZIP 文件
您可以按照以下步骤在以编程方式呈现时重命名 ZIP 文件:
- 创建 Viewer 类的实例
- 提供输入文件路径
- 创建 PdfViewOptions 类的实例
- 提供输出文件路径
- 设置要显示的新文件名
- 调用 View() 方法并传递 PdfViewOptions
以下代码示例显示了如何在使用 C# 呈现时重命名 ZIP 文件。
// 初始化查看器
Viewer viewer = new Viewer("C:\\Files\\sample.zip");
// 定义 PDF 视图选项
PdfViewOptions viewOptions = new PdfViewOptions("C:\\Files\\output.pdf");
// 设置新文件名
viewOptions.ArchiveOptions.FileName = new FileName("MyFiles");
viewer.View(viewOptions);
ArchiveOptions 类提供 FileName 属性,用于在标题中显示文件名。您可以设置一个新的显示名称,如上面的代码示例所示。默认情况下,它显示源文件的名称。
获得免费许可证
您可以通过申请 免费的临时许可证 来试用该 API,而不受评估限制。
结论
在本文中,您学习了如何使用 C# 呈现 ZIP 档案。您还学习了如何转换和查看 HTML、PDF 和 JPG 图像中的 ZIP 文件的内容。此外,您还学习了如何在 C# 中以编程方式从 ZIP 存档中获取文件夹和子文件夹的列表。您可以使用 documentation 了解有关 .NET API 的 GroupDocs.Viewer 的更多信息。如有任何歧义,请随时在 论坛 上与我们联系。