如何在 C# 中写入 CSV 文件
这篇文章将介绍如何在一个新项目中使用名为IronXL的C#库编写CSV文件。
如何编写CSV文件
安装用于写入CSV文件的C#库。
使用
WorkBook.Create创建一个新的工作簿。使用
WorkBook.CreateWorkSheet创建一个新的工作表。使用
workSheet["单元格名称"].Value和var为单个单元格添加值。- 使用
SaveAs方法将电子表格保存为CSV文件。
IronXL
与CSVHelper NuGet包相比,IronXL作为C#开发人员寻找无缝且强大的解决方案编写数据到CSV文件的高效灯塔。 在软件开发的动态环境中,处理和操作数据的能力至关重要,IronXL凭借其为C#量身打造的强大工具集迎接挑战。
本文深入探讨了使得IronXL成为C#开发人员提高将数据写入CSV文件过程的完美选择的特点与方法,平衡了简单性与精确性。
创建新的Visual Studio项目
要开始使用IronXL库,第一步涉及创建一个新的Visual Studio C#项目或加载一个现有项目。 以下是在Visual Studio中生成新项目的说明:
- 打开Visual Studio并导航到"文件"菜单。 将显示一个下拉菜单; 在此菜单中选择"新建"。 这一操作将显示另一个侧菜单。
File Menu
- 在侧菜单中找到并点击"项目"。 这将打开一个新窗口。 在此窗口中,使用搜索栏找到"控制台应用程序"。 选择与C#关联的选项,然后点击下一步按钮。
新项目-控制台应用程序
- 接下来将出现一个配置窗口。 输入项目名称,指定项目位置,然后点击下一步按钮。
配置项目
- 最后一个窗口将出现。 在这里,选择目标框架并通过点击创建按钮启动项目创建过程。
目标框架
安装CSV库IronXL
现在您已经设置好了项目,该是时候合并IronXL C#库了。 按照以下步骤在您的项目中安装IronXL:
- 在Visual Studio中,导航到工具菜单。 一个下拉菜单将出现——从此菜单中选择 NuGet 包管理器。
- 在NuGet包管理器中,从展开的侧菜单中选择管理NuGet解决方案包。
NuGet包
- 将弹出一个新窗口。在此窗口中,前往浏览器标签,在搜索栏中输入"IronXL"。 您将看到IronXL包的列表; 选择最新的并继续点击安装按钮。
IronXL
使用IronXL编写CSV文件
使用C# CSV库IronXL编写CSV文件的数据。 在本节中,我们将创建一个新的CSV文件并在其中写入数据。 以下示例使用IronXL库在CSV文件中创建一个简单的小票。让我们逐步分解程序代码。
导入IronXL和System.Linq
using IronXL;
using System.Linq;
// This is the main class where execution starts.
public class Program {
static void Main() {
// Main method where all logic is executed
}
}using IronXL;
using System.Linq;
// This is the main class where execution starts.
public class Program {
static void Main() {
// Main method where all logic is executed
}
}Imports IronXL
Imports System.Linq
' This is the main class where execution starts.
Public Class Program
Shared Sub Main()
' Main method where all logic is executed
End Sub
End Class这些行导入了IronXL库中用于处理Excel文件的必要类和功能,以及来自System.Linq命名空间的LINQ扩展方法。
创建WorkBook和WorkSheet
// Create a new workbook. This serves as the container for all worksheets.
WorkBook workBook = WorkBook.Create();
// Create a new worksheet within the workbook named "Receipt".
WorkSheet workSheet = workBook.CreateWorkSheet("Receipt");// Create a new workbook. This serves as the container for all worksheets.
WorkBook workBook = WorkBook.Create();
// Create a new worksheet within the workbook named "Receipt".
WorkSheet workSheet = workBook.CreateWorkSheet("Receipt");' Create a new workbook. This serves as the container for all worksheets.
Dim workBook As WorkBook = WorkBook.Create()
' Create a new worksheet within the workbook named "Receipt".
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("Receipt")此代码创建一个新的Excel工作簿(WorkBook)和此工作簿中名为"Receipt"的工作表(WorkSheet)。
添加标题
// Set the header row for columns. Headers added for better understanding of data.
workSheet["A1"].Value = "Product";
workSheet["B1"].Value = "Price";// Set the header row for columns. Headers added for better understanding of data.
workSheet["A1"].Value = "Product";
workSheet["B1"].Value = "Price";' Set the header row for columns. Headers added for better understanding of data.
workSheet("A1").Value = "Product"
workSheet("B1").Value = "Price"这些行设置了工作表第一行各列的标题行,为每一列标注标签。
填充项目信息
// Populate worksheet with product data and their respective prices.
workSheet["A2"].Value = "Item 1";
workSheet["B2"].DoubleValue = 20.10;
workSheet["A3"].Value = "Item 2";
workSheet["B3"].DoubleValue = 15.50;
workSheet["A4"].Value = "Item 3";
workSheet["B4"].DoubleValue = 10.25;// Populate worksheet with product data and their respective prices.
workSheet["A2"].Value = "Item 1";
workSheet["B2"].DoubleValue = 20.10;
workSheet["A3"].Value = "Item 2";
workSheet["B3"].DoubleValue = 15.50;
workSheet["A4"].Value = "Item 3";
workSheet["B4"].DoubleValue = 10.25;' Populate worksheet with product data and their respective prices.
workSheet("A2").Value = "Item 1"
workSheet("B2").DoubleValue = 20.10
workSheet("A3").Value = "Item 2"
workSheet("B3").DoubleValue = 15.50
workSheet("A4").Value = "Item 3"
workSheet("B4").DoubleValue = 10.25这些行在工作表中添加了关于三个项目的信息,包括它们的名称和价格。
计算总价
// Define the range for price values to be summed.
var range = workSheet["B2:B4"];
// Calculate the sum of prices.
decimal sum = range.Sum();// Define the range for price values to be summed.
var range = workSheet["B2:B4"];
// Calculate the sum of prices.
decimal sum = range.Sum();' Define the range for price values to be summed.
Dim range = workSheet("B2:B4")
' Calculate the sum of prices.
Dim sum As Decimal = range.Sum()使用LINQ,此代码计算单元格从B2到B4的价格总和。总和存储在sum变量中。
在WorkSheet中显示和更新总价格
// Display the sum in the console.
System.Console.WriteLine(sum);
// Update the total price in the worksheet.
workSheet["B5"].Value = sum;// Display the sum in the console.
System.Console.WriteLine(sum);
// Update the total price in the worksheet.
workSheet["B5"].Value = sum;' Display the sum in the console.
System.Console.WriteLine(sum)
' Update the total price in the worksheet.
workSheet("B5").Value = sum总和打印到控制台,并在工作表的B5单元格中更新。
将工作簿保存为CSV文件
// Save the workbook as a CSV file named "receipt.csv".
workBook.SaveAs("receipt.csv");// Save the workbook as a CSV file named "receipt.csv".
workBook.SaveAs("receipt.csv");' Save the workbook as a CSV file named "receipt.csv".
workBook.SaveAs("receipt.csv")最后,整个工作簿保存为名为"receipt.csv"的CSV文件。
总之,此代码在Excel工作表中使用IronXL创建了一个基本的小票,计算总价格,将其打印到控制台,然后把工作簿输出保存为一个CSV文件。小票包括"产品"和"价格"列,并根据各个商品价格计算总价。
带有标题的小票CSV文件输出
结论
这篇全面的文章强调了在C#中编写CSV文件的重要性,并使用IronXL库解释了这一过程。 它强调了此技能在各种数据密集型应用程序中的根本性质,并展示了IronXL在简化和优化C#生态系统中的数据操作任务方面的强大功能。 从项目设置到使用IronXL创建小票并将其保存为CSV文件的逐步方法,为开发人员提供了对C#无缝集成的实用理解。
通过提供灵活性和效率,IronXL成为C#开发人员提升程序处理和导出数据能力的宝贵工具,使其在各种软件开发场景中成为重要资产。
IronXL为所有涉及Excel的任务提供编程解决方案,无论是公式计算、字符串排序、裁剪、查找和替换、合并和取消合并、保存文件等,您也可以设置单元格数据格式。
有关完整的CSV文件书写教程,请访问此博客。 创建CSV文件的代码示例可以在以下博客中找到。
IronXL 提供免费试用,让您可以评估其功能。 如果您发现它对您的项目有用,可以购买从 $799 起的许可证。
常见问题解答
如何在 C# 中编写 CSV 文件而无需使用 Interop?
您可以利用 IronXL 库在 C# 中编写 CSV 文件而无需 Interop 支持。IronXL 允许您创建工作簿和工作表、添加数据,并使用其内置方法直接将其保存为 CSV 文件。
与 CSVHelper 相比,IronXL 在编写 CSV 文件方面有哪些优势?
IronXL 提供了更广泛的功能,不仅限于 CSV 编写,例如公式计算、单元格格式和多种 Excel 格式的导出,为开发人员提供了更全面的解决方案。
如何在 C# 项目中开始使用 IronXL?
要开始使用 IronXL,您需要通过 Visual Studio 中的 NuGet 包管理器安装它。创建一个新的 C# 项目,导航到“工具”,选择“NuGet 包管理器”,搜索“IronXL”并安装。
除了编写 CSV,IronXL 可以用于操作 Excel 文件吗?
是的,IronXL 能够处理多种 Excel 相关任务,例如读取和写入 Excel 文件、执行公式计算以及管理多个工作表中的数据。
如何在 C# 中使用 IronXL 向工作表添加数据?
要使用 IronXL 向工作表添加数据,请使用其标识符访问单个单元格,并使用 Value 属性分配值。然后,您可以按照所需格式保存工作表。
如何使用 IronXL 将工作簿保存为 CSV 文件?
在 IronXL 中创建并填充您的工作簿和工作表后,您可以使用 SaveAs 方法将其保存为 CSV 文件,并指定文件路径和格式。
IronXL 是否提供可供评估的试用版本?
是的,IronXL 提供免费试用版,允许开发人员在购买前探索和评估其功能。
如何使用 IronXL 计算工作表中的数字总计?
您可以使用 IronXL 利用 LINQ 计算工作表中的一系列单元格的总计,利用该库与 C# 的 LINQ 表达式的兼容性。
在使用 IronXL 编写 CSV 文件时,有哪些常见问题?
常见问题可能包括文件路径或权限不正确、数据格式不匹配或数据字段丢失。正确的错误处理和验证可以帮助减轻这些问题。
IronXL 能够高效处理 C# 项目中的大数据集吗?
是的,IronXL 被设计为能够高效地处理大数据集,允许开发人员读取、编写和操作大 Excel 文件而不会显著性能滞后。








