使用IRONXL

如何在 .NET Core 中导出到 CSV

更新 2024年八月23日
分享:

1.0 简介

最知名的库之一、铁XL本文将使用.NET、Java、Python 或 Node js 来对比.NET 技术与 Microsoft Excel 文档编程接口的不同方式。 它还将构建一个环境,用于读取、写入和导出Excel电子表格到CSV文件。

2.0 IronXL

"(《世界人权宣言》)IronXL对于 .NET,可以使用 C# Excel 库来读取 Microsoft Excel 文档并将其转换为 CSV 文件。 IronXL for .NET 是一个独立的.NET 软件库,无需安装 Microsoft Office 或 Microsoft.Office.Interop.Excel即可使用。 它可以阅读各种电子表格格式。

借助 IronXL for .NET 简单明了的 C# API,Excel 电子表格可以在.NET 环境中轻松读取、编辑和生成。 IronXL 完全支持 Xamarin、Linux、macOS、Azure、.NET Core 和 .NET Framework。

2.1 IronXL 库的功能

  • IronXL 是 Excel 电子表格的最佳 C# 库之一,可与 .NET Core 和 .NET Framework 配合使用。
  • IronXL 支持几乎所有 .NET Framework,包括控制台、Windows 窗体和 Web 应用程序。
  • Windows、macOS 和 Linux 均与 IronXL 兼容。
  • 可使用 IronXL.Excel 快速、轻松地访问 Excel 文件。
  • IronXL.Excel 可读取 XLSX 文件、CSV 文件、XLS、XSLT、TSV、XLSM 等 Excel 文件格式。 在众多可能的功能中,包括导入、更新和导出数据集和数据表.
  • 计算对于 Excel 电子表格可由 IronXL.Excel 生成。
  • 对于 Excel 列,IronXL.Excel 支持多种数据类型翻译的内容包括:文本、整数、日期、货币、公式和百分比。
  • 日期、货币、百分比、文本、数字、公式和其他 Excel 列数据类型都由IronXL支持。

3.0 创建 .NET Core 6 项目

在本简讯的以下章节中,您将看到使用 IronXL 库构建 CSV 文件是多么容易。

步骤 1:启动一个新项目,生成 CSV 文件。

开放式Visual Studio然后从 "文件 "菜单中选择 "新建项目"。

在随后的对话框中选择 "控制台应用程序".NET 项目模板,然后点击 "下一步"。

如何在 .NET Core 中导出到 CSV,图 1:在 Visual Studio 中创建一个新的控制台应用程序

在 Visual Studio 中创建一个新的控制台应用程序

您可以为 "项目名称 "输入任何您想要的名称。 在 "位置 "部分提供新项目的位置后,请单击下一步按钮继续。

如何在 .NET Core 中导出到 CSV,图 2:配置新项目

配置新项目

可以使用 Framework 下拉菜单选择 .NET Framework。 在本例中,.NET 的长期支持版本为 6.0。接下来,点击创建按钮。

如何在 .NET Core 中导出到 CSV,图 3:.NET 目标框架选择

.NET目标框架选择

安装 IronXL 库,因为它是后续解析所必需的。 为此,请在软件包管理器控制台中输入以下命令:

Install-Package IronXL.Excel

如何在 .NET Core 中导出为 CSV,第4步:安装 IronXL 包

安装 IronXL 软件包

另一种方法是使用 NuGet 软件包管理器搜索软件包 "IronXL"。 在 "浏览 "选项卡中,在搜索框中输入 "IronXL "即可搜索 IronXL 库。 从这个与 IronXL 相关的所有 NuGet 软件包列表中,然后选择所需的软件包进行下载。

如何在.NET Core中导出到CSV,第五步:在NuGet包管理器UI中搜索并安装IronXL包

在 NuGet 软件包管理器用户界面中搜索并安装 IronXL 软件包

4.0 将数据导出到 CSV 文件

使用 IronXL,将数据表创建为 CSV 文件既简单又快速。 它便于将数据写入新的 CSV 文件。第一步是包含 IronXL 命名空间,如下面的代码截图所示。 介绍完 IronXL 后,就可以在代码中使用其类和方法了。

如何在 .NET Core 中导出到 CSV,图 6:包括 IronXL 命名空间

包含 IronXL 名称空间

IronXL可用于创建Excel文件,随后转换成工作簿objects. 在成为 "WorkBook "类的对象后,可以通过多种方式对其进行操作。 通过将 "DataTable "转换为 Excel 工作表,下面的示例源代码创建了一个 Excel 文件。

using IronXL;
using System.Data;

static void main(String [] arg)
{
    ExportToExcel("test.csv");
}

public static void ExportToExcel(string filepath)
{
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Animals", typeof(string));
    table.Rows.Add("Lion");
    table.Rows.Add("Tiger");
    table.Rows.Add("Leopard");
    table.Rows.Add("Cheetah");
    table.Rows.Add("Hyenas");

    var workbook = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = workbook.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        writer["A" + (rowCount)].Value = row[0].ToString();
        rowCount++;
    }
    workbook.SaveAsCsv(filepath, ";");
    //or 
    var stream = workbook.ToStream();
}
using IronXL;
using System.Data;

static void main(String [] arg)
{
    ExportToExcel("test.csv");
}

public static void ExportToExcel(string filepath)
{
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Animals", typeof(string));
    table.Rows.Add("Lion");
    table.Rows.Add("Tiger");
    table.Rows.Add("Leopard");
    table.Rows.Add("Cheetah");
    table.Rows.Add("Hyenas");

    var workbook = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = workbook.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        writer["A" + (rowCount)].Value = row[0].ToString();
        rowCount++;
    }
    workbook.SaveAsCsv(filepath, ";");
    //or 
    var stream = workbook.ToStream();
}
Imports IronXL
Imports System.Data

Shared Sub main(ByVal arg() As String)
	ExportToExcel("test.csv")
End Sub

Public Shared Sub ExportToExcel(ByVal filepath As String)
	Dim table As New DataTable()
	table.Columns.Add("DataSet_Animals", GetType(String))
	table.Rows.Add("Lion")
	table.Rows.Add("Tiger")
	table.Rows.Add("Leopard")
	table.Rows.Add("Cheetah")
	table.Rows.Add("Hyenas")

	Dim workbook = WorkBook.Create(ExcelFileFormat.XLS)
	Dim writer = workbook.DefaultWorkSheet
	Dim rowCount As Integer = 1
	For Each row As DataRow In table.Rows
		writer("A" & (rowCount)).Value = row(0).ToString()
		rowCount += 1
	Next row
	workbook.SaveAsCsv(filepath, ";")
	'or 
	Dim stream = workbook.ToStream()
End Sub
VB   C#

上述 CSV 示例展示了如何将 DataTable 输出为 CSV 文件。建立 "数据表 "后,即创建列标题并建立第一列,然后逐行添加。将行和列添加到 DataTable 对象后,就构建了 WorkBook 对象。 WorkBook "对象可用于向 Excel 表单中添加数据,然后将其保存到其他地方。 下一步是启动工作表对象,该对象链接到工作簿对象。

在将值添加到工作表之前,会使用一个 foreach 循环从 DataTable 中读取每个值。 "(《世界人权宣言》)保存为 Csv在将数据全部放入工作表后,使用文件名作为参数,将数据保存到 CSV 文件中。 如果不需要分隔符,可将其作为可选参数。 然后,库会协助将数据写入 CSV 文件。除了使用记事本读取 Microsoft Excel 之外,还有另一种读取 CSV 文件的方法。 此外,翻译方法保存翻译的目的是将译文保存为给定的文件格式。

如何在 .NET Core 中导出到 CSV,示例 7: 输出的 Excel 文件 test.csv

输出 Excel 文件 test.csv

以上是运行的代码样本的输出结果。 数据表中的每一条信息都已分别添加到截图中新创建的 Excel 表中。 此外,还可以将其转换为流,作为 Web 应用程序的一部分,以返回可从客户端下载的文件。

有关将数据从 DataTable 导出到 Excel 的更多信息,请查看以下内容教程page.

要了解有关如何将数据导出到 Excel 的更多信息,请参阅以下内容分步教程.

5.0 结论

IronXL是使用最广泛的 Excel 实用程序之一。 它不依赖于任何其他外部库。 它是独立的,不需要安装 Microsoft Excel。 此外,还要通过各种渠道发挥作用。

适用于所有通过编程实现的 Microsoft Excel 文档相关操作、IronXL提供全面的解决方案。 计算公式、排序字符串或数字、修剪、追加、查找和替换、合并与分离在翻译过程中,还可以使用.NET、Java、Python 或 Node js 等语言。 在验证电子表格数据的同时,您还可以建立单元格数据类型。它有助于处理 Excel 数据,并允许您读写文件。

IronXL 提供了一个免费试用用户可以免费试用和测试其所有令人惊叹的功能。

在发布之初,IronXL 的价格为 $749。 用户还可以选择支付一年的订阅费,以获得更新和产品帮助。 IronXL 为不受限制的再分发提供安全保障,但需额外收费。 要查询更精确的定价数据,请访问 IronXL 的许可证页面.

< 前一页
如何在C#中加载Excel文件
下一步 >
C# CSV库(开发者教程)

准备开始了吗? 版本: 2024.11 刚刚发布

免费NuGet下载 总下载量: 1,111,773 查看许可证 >