使用IRONXL

如何在C#控制台应用程序中读取Excel文件

雷根·彭
雷根·彭
2024年四月3日
分享:

处理 Excel 文件是软件开发中的一项常见任务,尤其是在处理数据操作和分析时。

在 C# 控制台应用程序中读取 Excel 文件 是许多业务和数据处理场景中的常见任务。 Excel 文件采用表格数据结构,常用于存储和交换信息。

在C#应用程序中,IronXL 提供了一个功能强大且用户友好的解决方案来处理Excel文件。 本文将指导您使用 IronXL 库在 C# 控制台应用程序中读取 Excel 文件。

如何在 C# 控制台应用程序中读取 Excel 文件

  1. 在 Visual Studio 中创建 C# 控制台应用程序

  2. 安装IronXL C# Excel库

  3. 创建一个Workbook类对象

  4. 使用Workbook.Load方法加载Excel文件

  5. 使用WorkSheets方法加载工作表

  6. 使用WorkSheet.Row方法读取Excel文件数据

  7. 遍历Cell

  8. 在控制台窗口上打印Cell.Text

IronXL 库简介

IronXL 是一个用于简化开发人员与 Excel 相关任务的 .NET 库。 无论您需要创建、修改还是读取 Excel 文件,IronXL.Excel 都能提供全面的特性和功能。 IronXL.Excel 简化了与 Excel 工作簿、工作表和单元格交互的过程。

有了 IronXL,开发人员可以毫不费力地读取和写入 Excel 文件中的数据,无需安装 Microsoft Office Interop 或 Excel 即可将 Excel 功能无缝集成到 C# 项目中。

利用 IronXL.Excel 的功能,开发人员可以操作单元格值、从 Excel 工作簿中提取数据并动态生成 Excel 文档。 IronXL.Excel 凭借其直观的 API 和强大的功能集,使开发人员能够高效处理 Excel 数据,轻松完成数据分析、报告和文档生成等任务。

无论您使用的是 Microsoft Excel 文件、电子表格还是工作表,IronXL.Excel 都能为您提供所需的工具,以简化 C# 应用程序开发流程。

IronXL 的功能

在继续之前,让我们重点介绍一些IronXL的关键功能:

  1. 创建和编辑Excel文件:IronXL支持创建和修改Excel文件,使开发人员可以操作工作表、单元格和格式。

  2. 读取 Excel 文件:该库便于从现有 Excel 文件中提取数据,使在 .NET 应用程序中读取和处理 Excel 电子表格数据变得简单。

  3. 导出到 Excel:IronXL 使得可以将应用程序中的数据导出为 Excel 格式,确保与其他工具和平台的兼容性。

  4. 公式和函数:支持Excel公式和函数,允许动态计算和数据操作。

  5. 单元格格式化:IronXL提供单元格格式化功能,包括样式、字体、颜色和边框。

使用 Visual Studio 创建控制台应用程序

让我们先在 Visual Studio 中创建一个新的 C# 控制台应用程序。

  1. 打开 Visual Studio。

    1. 选择 "创建新项目"。

    如何在C#控制台应用程序中读取Excel文件:图1

    1. 选择 C# 模板下的 "控制台应用程序"。

    在 C# 控制台应用程序中读取 Excel 文件的方法:图 2

    1. 提供项目名称并单击 "下一步"。

    如何在C#控制台应用程序中读取Excel文件:图3

    1. 设置适当的 .NET Framework,然后点击 "创建"。

    如何在C#控制台应用程序中读取Excel文件:图4

使用 NuGet 软件包管理器控制台或解决方案安装 IronXL

现在我们有了控制台应用程序,需要安装 IronXL 库。

选项 1:使用 NuGet 包管理器控制台

Install-Package IronXL.Excel

方案 2:在 Visual Studio 中使用 NuGet 软件包管理器

  1. 右键单击解决方案资源管理器中的项目。

  2. 选择 "管理 NuGet 软件包"。

  3. 搜索 "IronXL",然后点击 "安装"。

    在C#控制台应用程序中读取Excel文件的方法:图5

使用 IronXL.Excel 阅读 Excel 文件的步骤

现在,让我们通过步骤使用 IronXL 在我们的 C# 控制台应用程序中读取 Excel 文件。 以下代码片段允许您在 C# 控制台应用程序中读取 Excel 文件:

using IronXL;
class Program
{
    public static void Main()
    {
        // Specify the path to the Excel file
        string excelFilePath = "path/to/your/excel/file.xlsx";
        // Create a WorkBook object
        WorkBook workBook = WorkBook.Load(excelFilePath);
        // Access the first worksheet
        WorkSheet workSheet = workBook.WorkSheets [0];
        // Iterate through rows and columns
        foreach (var row in workSheet.Rows)
        {
            foreach (var cell in row)
            {
                Console.Write(cell.Text + "\t");
            }
            Console.WriteLine();
        }
        // Close the workbook
        workBook.Close();
    }
}
using IronXL;
class Program
{
    public static void Main()
    {
        // Specify the path to the Excel file
        string excelFilePath = "path/to/your/excel/file.xlsx";
        // Create a WorkBook object
        WorkBook workBook = WorkBook.Load(excelFilePath);
        // Access the first worksheet
        WorkSheet workSheet = workBook.WorkSheets [0];
        // Iterate through rows and columns
        foreach (var row in workSheet.Rows)
        {
            foreach (var cell in row)
            {
                Console.Write(cell.Text + "\t");
            }
            Console.WriteLine();
        }
        // Close the workbook
        workBook.Close();
    }
}
Imports Microsoft.VisualBasic
Imports IronXL
Friend Class Program
	Public Shared Sub Main()
		' Specify the path to the Excel file
		Dim excelFilePath As String = "path/to/your/excel/file.xlsx"
		' Create a WorkBook object
		Dim workBook As WorkBook = WorkBook.Load(excelFilePath)
		' Access the first worksheet
		Dim workSheet As WorkSheet = workBook.WorkSheets (0)
		' Iterate through rows and columns
		For Each row In workSheet.Rows
			For Each cell In row
				Console.Write(cell.Text & vbTab)
			Next cell
			Console.WriteLine()
		Next row
		' Close the workbook
		workBook.Close()
	End Sub
End Class
$vbLabelText   $csharpLabel

本 C# 代码片段演示了如何使用 IronXL 库从 Excel 文件读取数据并将其显示在控制台应用程序中。 控制台窗口将读取并显示以下 Excel 文件:

如何在C#控制台应用程序中读取Excel文件:图6

现在,让我们逐步分解代码:

导入 IronXL 命名空间

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

该行导入了 IronXL 命名空间,其中包含用于处理任何 Excel 文档的类和方法。

主要方法

public static void Main() {
    // Main method where the program execution begins 
}
public static void Main() {
    // Main method where the program execution begins 
}
Public Shared Sub Main()
	' Main method where the program execution begins 
End Sub
$vbLabelText   $csharpLabel

主方法是应用程序的入口。 我们将在此主方法中编写上述代码片段。

Excel 文件路径

string excelFilePath = "path/to/your/excel/file.xlsx";
string excelFilePath = "path/to/your/excel/file.xlsx";
Dim excelFilePath As String = "path/to/your/excel/file.xlsx"
$vbLabelText   $csharpLabel

此行指定您要阅读的 Excel 文件的路径。 将 "path/to/your/excel/file.xlsx" 替换为您的 Excel 文件的实际路径。

加载 Excel 文件

WorkBook workBook = WorkBook.Load(excelFilePath);
WorkBook workBook = WorkBook.Load(excelFilePath);
Dim workBook As WorkBook = WorkBook.Load(excelFilePath)
$vbLabelText   $csharpLabel

WorkBook.Load() 方法用于将由 excelFilePath 指定的 Excel 文件加载到名为 workBookWorkBook(excel)对象中。

访问工作表

WorkSheet workSheet = workBook.WorkSheets [0];
WorkSheet workSheet = workBook.WorkSheets [0];
Dim workSheet As WorkSheet = workBook.WorkSheets (0)
$vbLabelText   $csharpLabel

该行代码访问工作簿中的第一个 Excel 表 (workBook.WorkSheets [0]),并将其分配给名为 workSheet 的 Excel WorkSheet 对象。

行列迭代

foreach (var row in workSheet.Rows)
{
    foreach (var cell in row)
    {
        Console.Write(cell.Text + "\t");
    }
    Console.WriteLine();
}
foreach (var row in workSheet.Rows)
{
    foreach (var cell in row)
    {
        Console.Write(cell.Text + "\t");
    }
    Console.WriteLine();
}
Imports Microsoft.VisualBasic

For Each row In workSheet.Rows
	For Each cell In row
		Console.Write(cell.Text & vbTab)
	Next cell
	Console.WriteLine()
Next row
$vbLabelText   $csharpLabel

这些嵌套的 foreach 循环遍历工作表中的每一行和每一列。 对于每个单元格,单元格的文本值(cell.Text)打印到控制台,随后是一个制表符("\t")。 在打印完一行中的所有单元格后,将打印一个换行符以移动到下一行。

关闭工作簿

workBook.Close();
workBook.Close();
workBook.Close()
$vbLabelText   $csharpLabel

最后,调用 workBook.Close() 方法以关闭工作簿并释放与其关联的任何资源。

有关更多工作代码示例,请访问此代码示例页面。

输出

运行应用程序后,Excel 文件中的数据将打印在控制台窗口中:

如何在 C# 控制台应用程序中读取 Excel 文件:图 7

结论

在本教程中,我们探讨了使用 IronXL 库在 C# 控制台应用程序中读取 Excel 文件的过程。 IronXL.Excel 凭借其直观的功能简化了与 Excel 相关的任务,使其成为 .NET 开发人员开发以数据为中心的应用程序的重要工具。

请随时通过访问此文档页面,探索IronXL提供的附加功能,以便在您的C#项目中进行更高级的Excel操作。

IronXL 提供免费试用,让您在做出明智决定之前测试其完整功能。 对于商业用途,您需要购买从$749开始的许可证密钥。

有关许可包的更多信息,请访问此许可页面。 从这里下载库并试用。

雷根·彭
软件工程师
Regan毕业于雷丁大学,拥有电子工程学士学位。在加入Iron Software之前,他的前工作职位要求他专注于单一任务;他在Iron Software最喜欢的是能进行多种工作,无论是增加销售价值、技术支持、产品开发还是营销。他喜欢了解开发人员如何使用Iron Software的库,并利用这些知识不断改进文档和开发产品。
< 前一页
如何在 C# 中重命名 Excel 工作表
下一步 >
如何在C#中将DataGridView导出到Excel