如何在 C# 中导入 Excel 文件
Microsoft Excel 是一款功能强大的电子表格软件,有助于数据组织、展示和分析。 然而,在 C# 中以编程方式操作 Excel 可能具有挑战性。 IronXL 软件库可用于在 C# 中导入和读取 Excel 文件。
IronXL - Excel 库
IronXL是一个 .NET Excel 库,它优先考虑用户的易用性、准确性和速度。 它可以帮助您导入和读取 Excel 文档,并以闪电般的速度高效地创建和编辑 Excel 文件。 它无需 MS Office Interop 即可运行。这意味着即使不安装 Excel,它也能提供读取 Excel 文件的所有功能。 这使得 IronXL 成为开发人员在 C# 中导入和读取 Excel 文件的强大工具。
IronXL 可在 Windows、Linux、MacOS、Docker、Azure 和 AWS 等所有平台上使用。 它与所有 .NET Framework 版本兼容。 IronXL 是一个功能强大的库,可以集成到控制台、桌面和 Web ASP.NET 应用程序中。 它支持不同的工作簿格式,如 XLS 和 XLSX 文件、XSLT 和 XLSM、CSV 和 TSV。
一些重要功能
如何在C#中导入Excel工作簿?
前提条件
要在 C# 中使用 IronXL 读取 Excel 文件,请确保计算机上已安装以下组件:
- Visual Studio - 它是开发 C# .NET 应用程序的官方 IDE。 您可以从微软网站下载并安装 Visual Studio。
- IronXL - 这是一个帮助在 C# 中处理给定路径的 Excel 表格的库。 在使用前,必须在 C# 程序中安装。 IronXL 可以从NuGet 网站下载,也可以在 Visual Studio 工具中管理 NuGet 程序包。 您也可以直接下载.NET Excel DLL文件。
添加必要的命名空间
安装好 Visual Studio 和 IronXL 后,在源代码中引用 IronXL 程序集即可使用 IronXL。 在新项目中,将要使用 IronXL 函数的文件顶部添加以下代码行:
using IronXL;using IronXL;Imports IronXL在 C# 中打开现有 Excel 文件
微软Excel电子表格也称为Excel工作簿。 每个工作簿包含多个工作表,每个工作表包含带有其值的表格单元格。 要打开和读取 Excel 文件,应该使用 IronXL 库中的WorkBook类和Load方法加载它。 代码如下
// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");' Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
Dim workbook As WorkBook = WorkBook.Load("test.xlsx")这将打开工作簿实例引用变量中的 Excel 文件。 由于它可以有多个工作表,因此可以用于打开特定工作表或同时打开所有工作表。 以下代码打开工作表实例变量中的第一个工作表:
WorkSheet sheet = workbook.WorkSheets.First();WorkSheet sheet = workbook.WorkSheets.First();Dim sheet As WorkSheet = workbook.WorkSheets.First()这将打开 Excel 文件中的第一个工作表,现在可以向该工作表读取和写入 Excel 数据。
打开 Excel 文件
如何在 C# 中导入 Excel 文件,图 1:Excel 文件 Excel 文件
从导入的 Excel 文件中读取数据
Excel 文件导入后,即可读取数据。 使用 IronXL 在 C# 中读取 Excel 文件数据非常简单容易。 您可以通过简单指定单元格引用编号来读取 Excel 单元格值。
下面的代码检索具有引用编号 "C2" 的单元格的值:
// Select cells easily in Excel-notation and return the value
int cellValue = sheet["C2"].IntValue;
// Display the value
Console.WriteLine(cellValue);// Select cells easily in Excel-notation and return the value
int cellValue = sheet["C2"].IntValue;
// Display the value
Console.WriteLine(cellValue);' Select cells easily in Excel-notation and return the value
Dim cellValue As Integer = sheet("C2").IntValue
' Display the value
Console.WriteLine(cellValue)译文如下:
如何在 C# 中导入 Excel 文件,图 2:读取 Excel 读取 Excel
现在,让我们从打开的 Excel 文件中读取一系列单元格的数据。代码如下:
// Read from a range of cells elegantly.
foreach (var cell in sheet["A2:A6"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}// Read from a range of cells elegantly.
foreach (var cell in sheet["A2:A6"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}' Read from a range of cells elegantly.
For Each cell In sheet("A2:A6")
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell代码非常简单、干净和清晰。 可以使用简单的语法引用单元格范围,如foreach循环所示: sheet["A2:A6"] ,并且可以遍历每个单元格以获取其值。 在这里,您将在控制台输出中看到从第2行到第6行的 A 列中的名称:
如何在 C# 中导入 Excel 文件,图 3:读取单元格区域 读取单元格范围
有关读取和写入单元格值的更多详细信息,请查看本教程:C# 中读取 Excel 文件示例。
从 Excel 文件导入所有数据
IronXL 可用于一次性读取 Excel 表格,使用行和列索引。 以下 IronXL 代码示例有助于在控制台输出中以相同格式获取整个 Excel 文件数据:
WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
// Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++)
{
// Traverse all columns of specific Row
for (int j = 0; j < sheet.Columns.Count(); j++)
{
// Get the values
string val = sheet.Rows[i].Columns[j].Value.ToString();
Console.Write("{0}\t", val);
}
Console.WriteLine();
}WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
// Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++)
{
// Traverse all columns of specific Row
for (int j = 0; j < sheet.Columns.Count(); j++)
{
// Get the values
string val = sheet.Rows[i].Columns[j].Value.ToString();
Console.Write("{0}\t", val);
}
Console.WriteLine();
}Imports Microsoft.VisualBasic
Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()
' Traverse all rows of Excel WorkSheet
For i As Integer = 0 To sheet.Rows.Count() - 1
' Traverse all columns of specific Row
For j As Integer = 0 To sheet.Columns.Count() - 1
' Get the values
Dim val As String = sheet.Rows(i).Columns(j).Value.ToString()
Console.Write("{0}" & vbTab, val)
Next j
Console.WriteLine()
Next i输出文件
如何在 C# 中导入 Excel 文件,图 4:读取 Excel 文件的输出控制台 读取 Excel 文件的输出控制台
.
总结
本文演示了如何在未安装 Microsoft Excel 的情况下,使用 C# 导入和读取 Excel 文件。 然后,它考虑了从 Excel 电子表格中读取数据的多种方法。 IronXL 还帮助在没有任何 Excel 安装的情况下在 C# 创建 Excel 文件。
IronXL 提供了一个一体化解决方案,用于以编程方式实现所有与 Microsoft Excel 文档相关的任务。 您可以执行公式计算、字符串或数字排序、去除和附加、查找和替换、合并和取消合并、保存文件等。您可以编辑单元格值,还可以设置单元格数据格式以及验证电子表格数据。 它还支持 CSV 文件,并可帮助您像处理 Excel 数据一样处理数据。
常见问题解答
如何在不使用 Interop 的情况下在 C# 中导入和读取 Excel 文件?
您可以使用 IronXL 库在 C# 中导入和读取 Excel 文件。只需使用 WorkBook.Load("file.xlsx") 加载 Excel 文件即可访问并处理数据,无需安装微软 Excel。
IronXL 库兼容哪些平台?
IronXL 兼容所有 .NET 框架,并可用于包括 Windows、Linux、MacOS、Docker、Azure 和 AWS 在内的多个平台。
我可以使用 IronXL 编辑 Excel 文件而无需安装 Microsoft Excel 吗?
是的,IronXL 允许您在 C# 中以编程方式创建和编辑 Excel 文件,而无需在系统上安装 Microsoft Excel。
IronXL 可以处理哪些 Excel 格式?
IronXL 支持各种 Excel 文件格式,如 XLS、XLSX、CSV、TSV 等,能够轻松导入和操作数据。
在 C# 项目中使用 IronXL 有哪些先决条件?
要使用 IronXL,请确保已安装 Visual Studio。您可以通过 NuGet 软件包管理器添加 IronXL 到您的项目,或通过下载并引用 .NET Excel DLL。
如何在 C# 中使用 IronXL 加载 Excel 工作簿?
要在 C# 中加载 Excel 工作簿,可以使用 IronXL 的 WorkBook.Load("path/to/file.xlsx") 方法,可以打开并操作工作簿。
是否可以使用 IronXL 处理 Excel 公式?
可以,IronXL 可以在每次编辑工作表时无缝地处理和重新计算 Excel 公式,确保数据计算的准确性。
如何使用 IronXL 从特定单元格读取数据?
要从特定单元格读取数据,可以使用 IronXL 语法如 sheet["B2"].StringValue 来获取 B2 单元格的值。
我可以使用 IronXL 遍历 Excel 表格的单元格范围吗?
是的,您可以使用 IronXL 遍历单元格范围,使用语法如 foreach (var cell in sheet["A1:C3"]) 来逐个处理每个单元格。
如何将 IronXL 集成到 ASP.NET 应用程序中?
可以通过 NuGet 添加库并在项目中引用,在 ASP.NET 应用程序中轻松集成 IronXL,实现 Excel 文件操作。








