如何在 C# 中将 Excel 转换为 HTML

发布: (2025年12月4日 GMT+8 11:30)
5 min read
原文: Dev.to

Source: Dev.to

介绍

在网页上显示表格数据往往是一大挑战。虽然 Excel 电子表格在数据组织和分析方面功能强大,但其原生的 .xlsx.xls 格式并不能直接被浏览器渲染。使用 C# 将 Excel 转换为 HTML 可以弥合丰富的 Excel 数据与网页友好格式之间的鸿沟。本指南展示如何使用 Spire.XLS for .NET 将 Excel 数据转换为干净、易访问的 HTML。

为什么要将 Excel 转换为 HTML?

  • 网页展示 – HTML 是网页的原生语言,能够在 Web 应用、仪表盘或报告中无缝嵌入数据,无需客户端安装 Excel。
  • 跨平台兼容 – HTML 在所有浏览器和操作系统上均可工作,确保任何人都能查看数据。
  • 便于共享 – 当仅需查看时,单个 HTML 文件往往比 Excel 工作簿更方便分发。
  • 减少客户端依赖 – 无需 Excel 查看器或插件,简化部署并提升用户体验。
  • 常见使用场景 – 生成在线报告、数据驱动的网页、产品目录,或将财务数据集成到基于 Web 的投资组合跟踪器中。

安装 Spire.XLS for .NET

将 Spire.XLS 添加到 C# 项目最简单的方式是通过 NuGet:

Install-Package Spire.XLS

或者,在 NuGet 包管理器 GUI 中搜索 Spire.XLS 并进行安装。

将 Excel 文件转换为 HTML

项目设置

  1. 创建一个新的 C# 项目(例如控制台应用)。
  2. 添加对 Spire.XLS 的引用 (using Spire.Xls;)。

核心步骤

  1. 加载工作簿 – 实例化 Workbook 对象并调用 LoadFromFile()
  2. 保存为 HTML – 使用 SaveToFile() 并传入 FileFormat.Html 枚举。

完整代码示例

using Spire.Xls;
using System;
using System.IO;

namespace ExcelToHtmlConverter
{
    class Program
    {
        static void Main(string[] args)
        {
            // Path to your input Excel file
            string excelFilePath = "SampleData.xlsx";
            // Path for the output HTML file
            string htmlFilePath = "OutputExcel.html";

            // Create a Workbook object
            Workbook workbook = new Workbook();

            try
            {
                // Load the Excel file
                workbook.LoadFromFile(excelFilePath);

                // Save the entire workbook to an HTML file
                workbook.SaveToFile(htmlFilePath, FileFormat.Html);

                Console.WriteLine($"Successfully converted '{excelFilePath}' to '{htmlFilePath}'.");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"An error occurred: {ex.Message}");
            }
            finally
            {
                // Dispose of the workbook object to release resources
                workbook.Dispose();
            }

            Console.ReadKey(); // Keep console open
        }
    }
}

代码说明

  • Workbook workbook = new Workbook(); – 初始化一个新的工作簿实例。
  • workbook.LoadFromFile(excelFilePath); – 加载已有的 Excel 文件。
  • workbook.SaveToFile(htmlFilePath, FileFormat.Html); – 将工作簿转换并保存为 HTML 文档。

将指定工作表保存为 HTML

如果只需要某一张工作表,可通过 workbook.Worksheets[index] 访问该表,然后使用 SaveToHtml() 并传入可选的 HTML 设置。

// Get the first worksheet
Worksheet sheet = workbook.Worksheets[0];

// Set HTML options (e.g., embed images)
HTMLOptions options = new HTMLOptions
{
    ImageEmbedded = true // Embeds images directly into the HTML
};

// Save the sheet to an HTML file with options
using (FileStream fileStream = new FileStream("OutputSheet.html", FileMode.Create))
{
    sheet.SaveToHtml(fileStream, options);
}

这种方式会生成一个包含嵌入式图片的独立 HTML 页面,适用于单独的网页。

结论

在 C# 中将 Excel 文件转换为 HTML 是让数据在网页上可访问的强大技术。Spire.XLS for .NET 简化了这一过程,提供了对整本工作簿或单个工作表转换的灵活选项。按照本指南的步骤操作,即可将 Excel 数据集成到 Web 应用、报告和仪表盘中,提升跨平台兼容性和用户体验。立即在你的项目中开始使用程序化的 Excel‑to‑HTML 转换吧。

Back to Blog

相关文章

阅读更多 »