使用IRONXL

在 C# 中如何导入 Excel 文件

更新 2024年二月20日
分享:

Microsoft Excel 是一款多功能电子表格软件,可帮助进行数据组织、展示和分析。 然而,用 C# 编程处理 Excel 可能具有挑战性。 IronXL 软件库可用于在 C# 中导入和读取 Excel 文件。

IronXL.Excel 库

IronXLExcel 是一个 .NET Excel 库,它优先考虑用户的易用性、准确性和速度。 它可以帮助您导入和读取 Excel 文档,并以迅雷不及掩耳之势高效创建和编辑 Excel 文件。 无需 MS Office Interop 即可运行。这意味着在未安装 Excel 的情况下,它也能提供读取 Excel 文件的所有功能。 这使得 IronXL 成为开发人员在 C# 中导入和读取 Excel 文件的强大工具。

IronXL 适用于 Windows、Linux、MacOS、Docker、Azure 和 AWS 等所有平台。 它与所有 .NET Framework 兼容。 IronXL for .NET 是一个多功能库,可以集成到控制台、桌面和 Web ASP.NET 应用程序中。 它支持不同的工作簿格式,如 XLS 和 XLSX 文件、XSLT 和 XLSM、CSV 和 TSV。

一些重要功能

  • 打开、读取 Excel 文件并搜索其中的数据不同的电子表格格式如 XLS/CSV/TSV/XLSX 文件。
  • 将 Excel 工作表导出为 XLS/XLSX/CSV/TSV/JSON。
  • 加密和解密带密码的 XLSM/XLTX/XLSX 文件。
  • System.Data.DataSetSystem.Data.DataTable 对象导入 Excel 表单。
  • Excel 文件公式每次编辑工作表时都会重新计算。
  • 使用 "工作表 "进行直观的单元格区域设置["A1:B10"]简易语法。
  • 排序单元格区域、列和行。
  • 样式单元 - 字体、字体大小、背景颜色、边界、对齐编号格式.

如何在 C&num 中导入 Excel 工作簿?

先决条件

要使用 IronXL in C# 阅读 Excel 文件,请确保计算机上安装了以下组件:

  1. Visual Studio - 它是开发 C# .NET 应用程序的官方集成开发环境。 您可以从微软网站.

  2. IronXL - 这是一个有助于在 C# 中以给定路径处理 Excel 表的库。 使用前必须在 C# 程序中安装。 IronXL 可从以下网址下载NuGet 网站或在 Visual Studio 工具中管理 NuGet 软件包。 您还可以下载.NET Excel DLL文件。

添加必要的命名空间

Visual Studio 和 IronXL 安装完成后,请参考 IronXL 程序集,以便在源代码中使用 IronXL。 在新项目中使用 IronXL 功能的文件顶部添加以下代码行:

using IronXL;  
using IronXL;  
Imports IronXL
VB   C#

在 C# 中打开现有 Excel 文件;

Microsoft Excel 电子表格也称为 Excel 工作簿。 每个工作簿包含多个工作表,单个工作表包含包含其值的表格单元格。 至打开并读取 Excel 文件应使用工作簿类和加载IronXL 库中存在的方法。 代码如下

//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")
VB   C#

这将在工作簿实例引用变量中打开 Excel 文件。 由于它可以有多个工作表,因此可用于打开特定的工作表或同时打开所有工作表。 以下代码将打开 sheet 实例变量中的第一个工作表:

WorkSheet sheet = workbook.WorkSheets.First();  
WorkSheet sheet = workbook.WorkSheets.First();  
Dim sheet As WorkSheet = workbook.WorkSheets.First()
VB   C#

这将打开 Excel 文件中的第一个工作表,现在可以读取 Excel 数据并将其写入该工作表。

打开的 Excel 文件

如何在 C# 中导入 Excel 文件,图 1:Excel 文件

Excel 文件

从导入的 Excel 文件中读取数据

导入 Excel 文件后,就可以读取数据了。 使用 IronXL.Excel 在 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)
VB   C#

输出结果如下

如何在 C# 中导入 Excel 文件,图 2:读取 Excel

阅读 Excel

现在,让我们从打开的 Excel 文件中的单元格区域读取数据。代码如下

// Read from Range of cells elegantly.
foreach (var cell in sheet ["A2:A6"]) {
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}  
// Read from Range of cells elegantly.
foreach (var cell in sheet ["A2:A6"]) {
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}  
' Read from Range of cells elegantly.
For Each cell In sheet ("A2:A6")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
VB   C#

代码非常简单、干净和清晰。 如 foreach 循环所示,可以使用简单的语法引用单元格范围:表格["A2:A6"]可以使用 for 循环遍历 ` 和每个单元格,以获取其值。 在此,您将在控制台输出中看到第 2 行至第 6 行 A 列中的名称:

如何在 C# 中导入 Excel 文件,图 3:读取单元格区域

读取单元格范围

有关读取和写入单元格值的详细信息,请查看本教程用 C# 示例读取 Excel 文件.

从 Excel 文件导入所有数据

IronXL.Excel 可用于使用行和列索引一次性读取 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
VB   C#

输出文件

如何在 C# 中导入 Excel 文件,图 4:读取 Excel 文件的输出控制台

读取 Excel 文件的输出控制台

添加图片 alt 文本。

摘要

本文演示了如何在未安装任何 Microsoft Excel 的情况下用 C# 导入和读取 Excel 文件。 然后考虑了从 Excel 电子表格中读取数据的多种方法。 IronXL.Excel 还有助于在不安装任何 Excel 的情况下用 C# 创建 Excel 文件。

IronXL.Excel 为所有与 Microsoft Excel 文档相关的任务提供了一个可通过编程实现的一体化解决方案。 您可以执行公式计算、字符串或数字排序、修剪和追加、查找和替换、合并和取消合并、保存文件等操作。您还可以编辑单元格值,设置单元格数据格式,以及验证电子表格数据。 它还支持 CSV 文件,帮助您像 Excel 数据一样工作。

IronXL可免费试用,并可特许LiteLicense` 起即可用于商业用途。

< 前一页
如何在C#中将数据表导出为CSV
下一步 >
如何在C#中将数据集转换为CSV

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

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