下面我将为您详细讲解“C#读取Excel到DataTable的方法示例”的完整攻略。
什么是DataTable
DataTable是.NET Framework中的一个类,用于在内存中表示数据库中的一个表格形式的数据结构。DataTable可以包含多个DataColumn,每个DataColumn代表一个表格列。
C#读取Excel到DataTable的方法
读取Excel文件中的数据并将其转换为DataTable,可以使用以下步骤:
-
安装ExcelDataReader和ExcelDataReader.DataSet依赖项;
-
引用ExcelDataReader和ExcelDataReader.DataSet命名空间;
-
使用
ExcelReaderFactory
类创建ExcelReader实例,然后使用ExcelReader实例的Read
方法从Excel文件中读取数据; -
创建并填充一个DataTable对象;
-
关闭ExcelReader实例。
下面是两个示例,分别演示如何读取Excel文件中的第一个工作表和指定工作表的数据。
示例1:读取Excel文件中的第一个工作表
using System.Data;
using System.IO;
using ExcelDataReader;
class Program
{
static void Main(string[] args)
{
string excelFilePath = "path/to/excel/file";
// 创建ExcelReader实例,并使用它读取Excel文件中的数据
using (var stream = File.Open(excelFilePath, FileMode.Open, FileAccess.Read))
using (var reader = ExcelReaderFactory.CreateReader(stream))
{
// 从第一个工作表读取数据
var dataSet = reader.AsDataSet(new ExcelDataSetConfiguration()
{
ConfigureDataTable = (tableReader) => new ExcelDataTableConfiguration()
{
UseHeaderRow = true // 使用第一行数据作为DataTable的列名
}
});
DataTable dataTable = dataSet.Tables[0]; // 获取第一个工作表的数据
// 处理dataTable,即可获取Excel文件中的数据
}
}
}
示例2:读取Excel文件中的指定工作表
using System.Data;
using System.IO;
using ExcelDataReader;
class Program
{
static void Main(string[] args)
{
string excelFilePath = "path/to/excel/file";
string sheetName = "Sheet2"; // 要读取的工作表名称
// 创建ExcelReader实例,并使用它读取Excel文件中的数据
using (var stream = File.Open(excelFilePath, FileMode.Open, FileAccess.Read))
using (var reader = ExcelReaderFactory.CreateReader(stream))
{
// 根据指定的工作表名称读取数据
var dataSet = reader.AsDataSet(new ExcelDataSetConfiguration()
{
ConfigureDataTable = (tableReader) => new ExcelDataTableConfiguration()
{
UseHeaderRow = true // 使用第一行数据作为DataTable的列名
}
});
DataTable dataTable = dataSet.Tables[sheetName]; // 获取指定工作表的数据
// 处理dataTable,即可获取Excel文件中的数据
}
}
}
以上就是C#读取Excel文件到DataTable的方法示例,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#读取Excel到DataTable的方法示例 - Python技术站