C# 导出到 Excel

2025年03月17日 | 阅读 9 分钟

引言

利用 C# 成功进行交易信息包括使用简化流程的库和 API,让开发人员能够专注于其应用程序的核心功能。在处理大型数据集或为客户提供在直观环境中分析和操纵数据的灵活性时,此功能尤为重要。

在 C# 中将数据导出到 Excel 是许多应用程序的基本要求,有助于高效的数据分析和报告。通过使用 EPPlus 或 Microsoft 的 Open XML SDK 等库,开发人员可以无缝地生成包含来自各种来源数据的 Excel 文件。该过程通常涉及创建工作表、用数据填充单元格和设置格式选项。

将信息导出到 Excel 中的 6 种简单方法,使用 C#

以非常简单的方式从各种数据源(如数据表、数据集、数组、对象集合、数据库、CSV/TSV 和 Microsoft Grid 控件)导出。将数据导出到 Excel 有助于以更易理解的格式可视化数据。此功能有助于生成财务报告、银行对账单和发票,同时还支持筛选大量数据、验证数据、排序数据等。

基本 XlsIO 提供以下将数据导出到 Excel 的方式

  • DataTable 到 Excel
  • 对象集合到 Excel
  • 数据库到 Excel
  • Microsoft Grid 控件到 Excel
  • 数组到 Excel
  • CSV 到 Excel

1. 从 DataTable 导出到 Excel

来自 ADO.NET 对象(例如 datatable、datacolumn 和 dataview)的信息可以导出到 Excel 工作表。导出可以通过识别段类型或单元格值类型作为段标题、作为超链接和作为大型数据集在短时间内完成。

通过 ImportDataTable 方法可以将数据表导出到 Excel 工作表。以下代码示例演示了如何将员工详细信息数据表导出到 Excel 工作表。


EXPORT TO EXCEL C#

在将大量数据导出到 Excel 时,如果不需要应用数字组织和样式,则可以使用 ImportDataTable 的重载,其中 ImportOnSave 参数的实际值为 True。在这里,产品在保存 Excel 文件时发生。

使用此选项可以高性能地导出大量数据。

如果您有一个命名范围,并且希望将数据从命名范围的特定行和列导出到命名范围,则可以使用下面的编程接口,其中 rowOffset 和 columnOffset 是从命名范围中的特定单元格导入的参数。

2. 从对象集合导出到 Excel

将信息从对象集合导出到 Excel 工作表是一种常见情况。但是,当您需要将信息从模型导出到 Excel 工作表时,此功能将非常有用。

Syncfusion Excel (XlsIO) 库支持将信息从对象集合导出到 Excel 工作表;此集合可以是单个集合,也可以是嵌套集合。将信息从嵌套集合导出到 Excel 工作表有助于保持信息顺序。此外,Syncfusion XlsIO 允许以不同的布局和分组选项导出信息。博客“将产品信息从集合导出到 Excel 并在 C# 中分组”清楚地说明了如何将信息从集合导出到 Excel 工作表,并解释了导出时可用的选项。

在这里,我们应该了解如何将信息从对象集合导出到 Excel 工作表。这可以通过 ImportData 方法实现。以下代码模型演示了如何将信息从集合导出到 Excel 工作表。


EXPORT TO EXCEL C#

3. 从信息库导出到 Excel

Excel 支持从不同的信息库创建 Excel 表格。如果您有一个需要使用 Excel 从数据库创建至少一个 Excel 表格的情况,您需要建立每一个与创建这些表格的关联。这可能很耗时,因此如果您找到一种替代方法可以快速有效地从信息库生成 Excel 表格,那难道不是您的最佳选择吗?

Syncfusion Excel (XlsIO) 库可帮助您将数据从 MS SQL、MS Access、Prophet 等数据库导出到 Excel 工作表。通过在数据库和 Excel 应用程序之间建立关联,您可以将数据从数据库导出到 Excel 表格。

您可以使用“刷新()”选项来更新 Excel 表格中已更改的信息,该信息已计划到数据库。

最重要的是,您可以参考文档,了解如何从外部连接创建表格,以了解如何将数据库导出到 Excel 表格。以下代码示例演示了如何将数据从数据库导出到 Excel 表格。


EXPORT TO EXCEL C#

4. 从 DataGrid、GridView、DataGridView 导出数据到 Excel

将数据从 Microsoft 框架控件导出到 Excel 工作表有助于以不同方式展示数据。您可能需要工作数小时才能从框架单元格中迭代数据及其样式,以便将其导出到 Excel 工作表。对于那些将数据从 Microsoft 框架控件导出到 Excel 工作表的人来说,这应该是个好消息,因为使用 Syncfusion Excel 库导出速度要快得多。

Syncfusion Excel (XlsIO) 库支持通过单个 API 调用将数据从 Microsoft 框架控件(如 DataGrid、GridView 和 DataGridView)导出到 Excel 工作表。此外,您可以导出带标题和样式的数据。

以下代码示例演示了如何将数据从 DataGridView 导出到 Excel 工作表。


EXPORT TO EXCEL C#

5. 从数组导出到 Excel

有时,可能需要将各种数据插入或更改到 Excel 工作表中的现有数据中。在这种情况下,行数和列数是预先知道的。当您有固定大小时,数组很有用。

Syncfusion .NET Excel 库支持将各种数据水平和垂直导出到 Excel 工作表。此外,还可以导出二维数组。

让我们考虑一个场景,“每人费用”。一个人的全年费用在 Excel 工作表中进行了整理。在这种情况下,您需要为新来的人 Paul Pogba 添加费用,在新行中,并更改所有跟踪人员 12 月份的费用。

EXPORT TO EXCEL C#

将各种数据导出到 Excel 工作表可以通过 Import Array 方法实现。以下代码示例演示了如何将各种数据水平和垂直导出到 Excel 工作表。

6. 从 CSV 导出到 Excel

逗号分隔值 (CSV) 记录有助于生成偶数数据或具有少量部分和大量行的轻量级报告。Excel 打开此类文档以使数据更易于阅读。

Syncfusion .NET Excel 库支持快速打开和保存 CSV 记录。以下代码示例演示了如何打开 CSV 记录,并将其保存为 XLSX 记录。最重要的是,数据会显示在一个表格中,并应用了许多组织。


EXPORT TO EXCEL C#

总结

如您所见,Syncfusion .NET Excel 库提供了多种将数据导出到 C# 中 Excel 的简单方法。有效地使用它们以高性能生成 Excel 报告并处理大量数据。花点时间查阅文档,您会发现各种选项和功能,所有这些都附带代码示例。使用该库,您还可以将 Excel 数据导出或写入 PDF、图像、数据表、CSV、TSV、HTML、对象集合、ODS 文件格式等。

如果您是我们的 .NET Excel 库的新手,强烈建议您遵循我们的入门指南。要在 C# 中导出数据,请选择一种格式(例如 CSV、Excel),使用相关库(例如 CsvHelper、EPPlus),规划数据结构,管理文件 I/O,考虑 UI,实施错误处理,进行彻底测试,并提供文档。示例:使用 CsvHelper 导出 CSV 涉及将帐户设置到指定的文件路径。