使用IRONXL

如何在C#中将文件导出为CSV

更新 2024年八月23日
分享:

本文将对比和比较各种.NET技术使用最知名的库之一以编程方式与Microsoft Excel文档接口的方法。 铁XL.此外,它还将创建一个将 Excel 电子表格写入、读取和导出为 CSV 文件的设置。

1.1 什么是 .NET 框架?

Microsoft 创建了专有的 .NET框架是一个主要与微软视窗兼容的软件框架。它是主要的通用语言基础设施 (CLI) 实现直到跨平台的 .NET 项目取而代之。它提供了跨多个不同编程语言的语言兼容性,并附带一个名为 Framework Class Library 的大型类库。 (FCL).

1.2 什么是 CSV?

一种称为 "逗号分隔值 "的文本文件格式,使用逗号将数值分成独立的列。表格数据以纯文本形式存储在 CSV 格式文件中,每一行通常对应一条数据记录。在 CSV 文件中,每条记录都有相同数量的字段,字段之间用逗号隔开。

2.0 IronXL 库功能

可以使用 IronXL for .NET C# Excel 库读取并转换 Microsoft Excel 文档为 CSV 文件。无需安装 Microsoft Office 或 Microsoft.Office.Interop.Excel,用户可以使用 IronXL,这是一个独立的 .NET 软件库。它能够读取多种电子表格格式。

IronXLIronXL 的简单 C# API 使得在 .NET 环境中读取、编辑和生成 Excel 电子表格变得容易。IronXL 完全支持 Xamarin、Linux、macOS、Azure、.NET Core 和 .NET Framework。

  • IronXL 是一个兼容 .NET Core 和 .NET Framework 的 C# 库,是处理 Excel 电子表格的最佳选择之一。
  • IronXL 支持几乎所有的 .NET Framework,包括 Web 应用程序、Windows 窗体和控制台应用程序。
  • IronXL 可以用于 Linux、macOS 和 Windows 操作系统。
  • IronXL 可以快速轻松地访问 Excel 文件。
  • IronXL 能够 读取各种Excel文件类型包括 XLSX、CSV、XLS、XLST、TSV、XLSM 等。用于导入、更新和 导出数据表和数据集 只是库众多选项中的一部分。
  • 对于 Excel 电子表格,IronXL 能够 生成计算
  • IronXL 支持多种数据类型 对于 Excel 列,包括文本、整数、日期、货币、公式和百分比。
  • IronXL 可以 处理多个值 以日期、货币、百分比、文本、数字、公式等多种Excel列数据类型的形式。

要了解如何将数据导出到Excel,请参阅此 教程.

3.0 在 Visual Studio 中创建新项目

打开 Visual Studio 并在使用IronXL库之前创建一个.NET项目。任何版本的Visual Studio都可以使用,但建议使用最新版本。为简化操作,本文将在本示例中使用控制台应用程序。

如何在 C# 中导出文件到 CSV,图 1:打开 Visual Studio,进入“文件”菜单并选择“新建项目”。在各种 .NET 项目模板中选择“控制台应用程序”。

打开 Visual Studio,进入“文件”菜单并选择“新建项目”。 从各种 .NET 项目模板中选择“控制台应用”。

然后输入项目的位置和名称。

如何在C#中导出文件到CSV,图2: 在Visual Studio中创建一个新项目

在 Visual Studio 中创建一个新项目

可以使用“框架”下拉菜单选择一个 .NET 框架。为此项目选择 .NET Framework 4.7。接下来,点击 创建 按钮。

当应用程序生成解决方案时,program.cs 文件将打开,允许您输入代码并构建/运行程序。

如何在C#中导出文件到CSV,图3:当控制台应用程序项目成功创建后,Program.cs文件将打开。

一旦控制台应用程序项目成功创建,Program.cs 文件将会打开。

要测试代码,下一步是添加 IronXL 库。

安装 IronXL 库,因为它是下一个修复所需的。为此,在 NuGet 包管理器控制台中输入以下命令:

Install-Package IronXL.Excel

如何在C#中导出文件到CSV,图4:在NuGet包管理器控制台中安装IronXL包

在 NuGet 包管理器控制台中安装 IronXL 包

另一种选择是在 NuGet 包管理器中查找包 "IronXL",然后从与 IronXL 相关的所有 NuGet 包列表中选择所需的包进行下载。

如何在C#中将文件导出为CSV,第5步:使用NuGet包管理器安装IronXL包

使用 NuGet 包管理器安装 IronXL 包

4.0 导出到 CSV 文件

IronXL 使创建字符串数组到CSV文件变得简单快捷。写入CSV文件因此变得更简单。首先,按照下面代码截图所示,包含IronXL命名空间。然后,在下面代码中使用IronXL的类和方法。

如何在C#中导出文件到CSV,图6:包含IronXL命名空间

包括IronXL命名空间

可以使用IronXL创建Excel文件,然后将其转换为工作簿对象。此对象提供了几种方法来处理它们。以下代码示例通过将数组字符串转换为Excel工作表来生成Excel文件。

using IronXL;
using IronXL.Options;
using System.Data;

static void Main ( string [ ] args ) { 
    string [] students = {"AAA", "BBB", "CCC", "DDD", "EEE", "FFF" };
    var workBook = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = workBook.DefaultWorkSheet;
    int rowCount = 1;
    foreach(var student in students)
    {
        writer ["A" + (rowCount)].Value = rowCount.ToString();
        writer ["B" + (rowCount)].Value = student.ToString();
        rowCount++;
    }
    workBook.SaveAsCsv("Sample.csv", ";");
    // or
    var stream = workBook.ToStream();
}
using IronXL;
using IronXL.Options;
using System.Data;

static void Main ( string [ ] args ) { 
    string [] students = {"AAA", "BBB", "CCC", "DDD", "EEE", "FFF" };
    var workBook = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = workBook.DefaultWorkSheet;
    int rowCount = 1;
    foreach(var student in students)
    {
        writer ["A" + (rowCount)].Value = rowCount.ToString();
        writer ["B" + (rowCount)].Value = student.ToString();
        rowCount++;
    }
    workBook.SaveAsCsv("Sample.csv", ";");
    // or
    var stream = workBook.ToStream();
}
Imports IronXL
Imports IronXL.Options
Imports System.Data

Shared Sub Main(ByVal args() As String)
	Dim students() As String = {"AAA", "BBB", "CCC", "DDD", "EEE", "FFF" }
	Dim workBook = WorkBook.Create(ExcelFileFormat.XLS)
	Dim writer = workBook.DefaultWorkSheet
	Dim rowCount As Integer = 1
	For Each student In students
		writer ("A" & (rowCount)).Value = rowCount.ToString()
		writer ("B" & (rowCount)).Value = student.ToString()
		rowCount += 1
	Next student
	workBook.SaveAsCsv("Sample.csv", ";")
	' or
	Dim stream = workBook.ToStream()
End Sub
VB   C#

上述代码-CSV示例将把数组导出到Excel文件。列标题在构建数组后创建。在建立第一列时逐行添加。 工作簿 对象在将数据添加到数组字符串后创建。您可以使用 WorkBook 对象将数据添加到 Excel 工作表,然后将其保存到其他位置。目标是通过创建 工作表 对象,可以链接到工作簿对象。

在将每个项目添加到电子表格之前,使用 foreach 循环从数组字符串中读取每个项目。数据被保存为 CSV 文件,使用 保存为 Csv 当所有数据都输入到工作表中时使用此方法。除了分隔符,文件名和位置也可以作为可选参数提供。然后库将帮助将数据写入新的CSV文件。如果您想阅读CSV文件而不是使用Microsoft Excel,可以使用记事本。IronXL还支持使用多种文件格式存储数据,如XLS, CSV和XLSX,通过 保存 方法。或者可以将工作簿转换为流,然后将数据写入所需的位置。

输出 CSV 文件

如何在C#中将文件导出为CSV格式,图7:输出的Excel文件

输出的 Excel 文件

上面展示了运行代码示例的输出结果。截图中新的 Excel 表格将字符串数组中的每一项数据单独添加。

要了解更多关于如何使用 IronXL 导出数据到 CSV,请参考这个。 分步教程.

5.0 结论

最受欢迎的 Excel 附加组件之一是 IronXL.它不依赖任何其他外部库。它自成一体,无需安装 Microsoft Excel。它可通过多种渠道运行。

IronXL 提供了一个完整的解决方案,适用于所有以编程方式执行的 Microsoft Excel 文档相关任务。可以执行计算、字符串或数字排序、修剪、添加、定位和替换、合并和取消合并、保存文件等。您可以定义单元格数据类型并检查电子表格数据。它让您能够读取和写入文件,使处理 Excel 数据更加简单。

IronXL 提供了一个 免费试用 许可证,让用户有机会免费试用其所有主要功能。

IronXL 在推出时只需 $749。如果用户需要软件的更新和帮助,也可以选择支付一年的订阅费。如果支付额外费用,IronXL 还可提供无限制再分发保护。要查找更准确的定价信息,请访问 IronXL 的 许可证页面.

< 前一页
如何在 C# 中以格式导出到 Excel
下一步 >
如何在C#中编辑电子表格

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

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