使用IRONXL

如何在C#中写入CSV文件数据

更新 2024年三月31日
分享:

本文将探讨如何使用 IronXL 编写 CSV 文件。

IronXL 库

IronXLC# Excel 是一个 .NET Excel 库,为在 C# 应用程序中创建、读取和编辑电子表格文件提供了全面的功能。 它在性能和输出准确性方面表现出色。 它支持各种电子表格工作簿文件格式,如 XLS、XLSX、XLSM、CSV 和 TSV。此外,它还能让您保存或导出数据将 Excel 文件转换为 CSV、JSON、HTML、二进制、字节数组、数据集或数据表等格式。

有了 IronXL,开发人员可以无缝地处理工作表和单元格范围,为操作数据提供了一种优雅的方法。 它允许轻松编辑公式该译文必须保持专业性,在解释这些开发人员工具的功能和优点的同时,保持技术上的准确性。 数据排序基于范围、列或行的翻译非常简单。 您还可以通过以下方式修改布局冷冻窗格, 自动调整行/列大小添加/删除行/列.

IronXL.Excel 提供用用户密码保护 Excel 文件和设置编辑权限的功能。 此外,它还提供以下功能添加、删除和提取图像从 Excel 工作表中翻译。 该库包含大量 Excel 函数,支持各种单元格数据格式。 这使得 IronXL.Excel 成为处理 Excel 文件最直观的 API 之一。

IronXL.Excel 的一个显著优势是,它不需要在机器上安装 Microsoft Excel 或 Office Interop 依赖项。它是一个独立的解决方案,可在多个平台上运行,并兼容.NET 7、6 和 5 版本。它还支持 .NET Core 2 和 3 以及标准 2 版本。 在使用 Excel 电子表格时,IronXL 与 .NET Framework 4.5 及更高版本兼容。

创建控制台应用程序

建议从 Visual Studio 的最新版本开始创建应用程序。 Visual Studio 是用于 C# 开发的官方集成开发环境,您必须安装它。 您可以从微软 Visual Studio 网站如果没有安装。

以下步骤将创建一个名为 "DemoApp "的新项目。

  1. 打开 Visual Studio,点击 "创建新项目"。

    如何用 C# 在 CSV 文件中写入数据,图 1:打开 Visual Studio

    打开 Visual Studio

  2. 选择 "控制台应用程序",然后单击 "下一步"。

    如何用 C# 在 CSV 文件中写入数据,图 2:在 Visual Studio 中创建新项目

    在 Visual Studio 中创建一个新项目

  3. 设置项目名称

    如何用 C# 在 CSV 文件中写入数据,图 3:配置新项目

    配置您的新项目

  4. 选择 .NET 版本。 选择稳定版本 .NET 6.0。

    如何用 C# 在 CSV 文件中写入数据,图 4:.NET 框架选择

    *.NET Framework 选择***

安装 IronXL 库

项目创建后,需要在项目中安装 IronXL 库才能使用。 请按照以下步骤安装。

  1. 从解决方案资源管理器或工具中打开 NuGet 包管理器。

    如何用 C# 在 CSV 文件中写入数据,图 5:导航至 NuGet 包管理器

    导航至 NuGet 软件包管理器

  2. 浏览 IronXL 库并选择当前项目。 点击安装。

    如何用 C# 在 CSV 文件中写入数据,图 6:在 NuGet 软件包管理器用户界面中搜索并安装 IronXL 软件包

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

    Program.cs 文件顶部添加以下命名空间

using IronXL;
using IronXL;
Imports IronXL
VB   C#

在 C# 中创建新工作簿;

IronXL 提供了创建空工作簿的功能。 工作簿是包含多个工作表的电子表格。 数据存储在单元格中。 CSV 看起来也像电子表格,但扩展名为 CSV 文件。

// Creates a new Instance of WorkBook SpreadSheet
WorkBook workBook = new WorkBook();
// Creates a new Instance of WorkBook SpreadSheet
WorkBook workBook = new WorkBook();
' Creates a new Instance of WorkBook SpreadSheet
Dim workBook As New WorkBook()
VB   C#

现在,让我们在工作簿. 在工作簿中有多种创建工作表的方法。

// Adds sheet1 to the workbook
WorkSheet sheet = workBook.DefaultWorkSheet;

// Creates a worksheet with name Sheet1
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
// Adds sheet1 to the workbook
WorkSheet sheet = workBook.DefaultWorkSheet;

// Creates a worksheet with name Sheet1
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
' Adds sheet1 to the workbook
Dim sheet As WorkSheet = workBook.DefaultWorkSheet

' Creates a worksheet with name Sheet1
Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
VB   C#

如果您想在现有工作簿中添加更多工作表,请使用创建工作表方法。

注: 您可以使用工作簿.载入CSV如果 CSV 文件已经存在,请使用该方法。 您可以看到代码示例页面用于加载现有的 CSV 文件。

将数据写入 "工作表

使用 IronXL 编写 CSV 文件非常简单。 它提供 Excel 功能,可将数据写入 CSV。单元格引用可用于在指定位置添加值。 在这里,我将使用 foreach 循环添加一些员工的记录。

string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}
string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}
Dim employeenames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }
Dim i As Integer = 2
sheet ("A1").Value = "ID"
sheet ("B1").Value = "Name"
sheet ("C1").Value = "Salary"

For Each employee In employeenames
	sheet ("A" & i).Value = i
	sheet ("B" & i).Value = employee
	sheet ("C" & i).Value = i * 1000
	i += 1
Next employee
VB   C#

在上述代码示例中,创建了一个 employeenames 数组,并在第一行设置了标题:ID、Name、Salary。 变量 i 也被初始化为值 2,它将输入标题下方第 2 行的记录。 foreach "循环从列表中抽取一名员工,并将其添加到包含 ID 和薪资值的行中。 在循环结束之前,i 的值应该递增,否则每条记录都将添加到同一行中。

将数据保存为 CSV 文件

最后一步是保存 CSV 文件。IronXL 提供了以下方法保存为 Csv将工作簿保存为 CSV 文件。该方法的第一个参数是 CSV 文件名,第二个参数是分隔符。

workBook.SaveAsCsv("sample.csv", ",");
workBook.SaveAsCsv("sample.csv", ",");
workBook.SaveAsCsv("sample.csv", ",")
VB   C#

内容如下

using System;
using IronXL;

WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}

workBook.SaveAsCsv("sample.csv", ",");
using System;
using IronXL;

WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";

foreach (var employee in employeenames)
{
    sheet ["A" + i].Value = i;
    sheet ["B" + i].Value = employee;
    sheet ["C" + i].Value = i * 1000;
    i++;
}

workBook.SaveAsCsv("sample.csv", ",");
Imports System
Imports IronXL

Private workBook As WorkBook = WorkBook.Create()
Private sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")

Private employeenames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }
Private i As Integer = 2
Private sheet ("A1").Value = "ID"
Private sheet ("B1").Value = "Name"
Private sheet ("C1").Value = "Salary"

For Each employee In employeenames
	sheet ("A" & i).Value = i
	sheet ("B" & i).Value = employee
	sheet ("C" & i).Value = i * 1000
	i += 1
Next employee

workBook.SaveAsCsv("sample.csv", ",")
VB   C#

输出

如何用 C# 在 CSV 文件中写入数据,图 7:输出的 CSV 文件

输出 CSV 文件

摘要

本文介绍一种使用 C# 中的 IronXL 编写 CSV 文件的简单方法。 IronXL 还提供了使用现有 CSV 文件的功能,不会造成任何麻烦。 您还可以使用简单的语法编写 CSV 文件、创建新的 Excel 文件并向其中写入数据。 IronXL.Excel 也可用于在未安装 Microsoft Office 的情况下读写 Excel 文件。 关于不同电子表格格式之间的转换,您可以参考以下内容代码示例页面.

IronXL 可免费用于开发,也可授权用于商业用途。 您还可以免费试用 IronXL试用期用于商业用途。

< 前一页
如何在ASP.NET中查看Excel
下一步 >
如何使用C#在Excel单元格中设置背景颜色

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

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