建设商务公司网站,茂名网站建设价格,达内培训网站开发,做采集网站Excel文件是存储表格数据的普遍格式#xff0c;因此能够高效地读取和提取信息对于我们来说至关重要。C#语言借助.NET Framework和各种库的广泛功能#xff0c;能够进行高效的数据操作。利用C#读取Excel文件并将数据写入数据库和DataTable#xff0c;或者将数据用于其他目的因此能够高效地读取和提取信息对于我们来说至关重要。C#语言借助.NET Framework和各种库的广泛功能能够进行高效的数据操作。利用C#读取Excel文件并将数据写入数据库和DataTable或者将数据用于其他目的对于开发人员来说是一个处理Excel数据的优秀解决方案。 本文主要介绍如何使用 C# 来读取 Excel 文件包括以下部分 文章目录 使用C#读取Excel文件引导C#代码读取Excel文件数据并写入文本使用C#代码将Excel文件读取到DataTable对象中C#代码读取Excel文件并插入到数据库中 本文所使用的方法需要用到Excel文件处理库Spire.XLS for .NET可从官网下载或在NuGet中搜索安装也可在项目管理控制台输入PM Install-Package Spire.XLS安装。
使用C#读取Excel文件引导
为了有效地利用Spire.XLS for .NET读取Excel文件数据并写入其他位置需要熟悉其中的一些类、属性和方法。下表总结了一些主要的类、属性和方法以及它们的功能和描述
项目描述Workbook代表Excel工作簿并提供读取和操作其内容的方法。Worksheet代表工作簿中的单个工作表。Workbook.LoadFromFile 方法从文件加载Excel工作簿。Workbook.Worksheets 属性获取工作簿中的工作表集合。Worksheet.Range[] 属性获取工作表中的单元格范围索引从1开始。CellRange.Value 属性获取或设置单元格的值。CellRange.Text 属性获取或设置单元格的显示文本。
读取Excel文件的典型工作流程包括以下步骤
使用 Workbook.LoadFromFile() 方法加载Excel文件。通过 Workbook.Worksheets[] 属性访问工作表。通过 Worksheet.Range[] 属性访问单元格。通过 CellRange.Text 属性访问单元格中显示的文本或通过 CellRange.Value 属性访问单元格的值文本、数字、公式等。检索数据将数据写入文本文件、数据库等或执行其他所需操作。可以直接使用 Worksheet.ExportDataTable() 方法将单元格值导出到数据表并返回一个DataTable对象。还可以直接使用 Workbook.SaveToFile() 方法将工作簿转换为任何支持的格式。
C#代码读取Excel文件数据并写入文本
使用C#读取Excel文件并将数据写入文本文件的步骤如下
导入所需的命名空间。创建 Workbook 类的对象并使用 Workbook.LoadFromFile() 方法加载Excel文件。通过 Workbook.Worksheets[] 属性获取第一个工作表。创建一个文本文件用于写入工作表中的数据。遍历分配的行和列在 Worksheet.Range[] 属性中访问单元格并通过 CellRange.Text 属性获取每个单元格的显示文本然后将其写入文本文件中。释放资源。 代码示例 C#
using Spire.Xls;
using System.IO;class Program
{static void Main(string[] args){// 加载Excel文件Workbook workbook new Workbook();workbook.LoadFromFile(Sample.xlsx);// 获取第一个工作表Worksheet worksheet workbook.Worksheets[0];// 创建输出文本文件string outputFile Output.txt;StreamWriter writer new StreamWriter(outputFile);// 遍历工作表的行和列并将数据写入文本文件for (int row 1; row worksheet.LastRow; row){for (int col 1; col worksheet.LastColumn; col){CellRange range worksheet.Range[row, col];string cellValue range.Text null ? string.Empty : range.Text.ToString();writer.Write(cellValue \t); // 使用制表符作为单元格数据的分隔符}writer.WriteLine(); // 写入换行符}// 关闭写入器并保存文本文件writer.Close();// 释放资源workbook.Dispose();}
}读取结果
使用C#代码将Excel文件读取到DataTable对象中
DataTable是.NET Framework中表示数据表的对象。它用于在内存中存储和操作数据并可以执行排序、筛选、修改和导出等操作。使用C#读取Excel文件数据并将其写入DataTable对象可以方便进一步处理数据。以下是具体步骤
导入所需的命名空间。创建 Workbook 类的对象并使用 Workbook.LoadFromFile() 方法加载Excel文件。通过 Workbook.Worksheets[] 属性获取第一个工作表。使用 Worksheet.ExportDataTable() 方法将工作表中的数据导出到一个 DataTable 对象中。释放资源。
代码示例 C#
using Spire.Xls;
using System.Data;namespace ExcelToAccess
{class Program{static void Main(string[] args){// 创建Workbook类的对象Workbook workbook new Workbook();// 加载Excel文件workbook.LoadFromFile(Sample.xlsx);// 获取第一个工作表Worksheet worksheet workbook.Worksheets[0];// 将工作表中的数据导出到一个DataTable对象DataTable dataTable worksheet.ExportDataTable();workbook.Dispose();}}
}C#代码读取Excel文件并插入到数据库中
这个示例展示了如何使用C#代码将Excel工作表数据写入Access数据库。这种方法还需要使用System.Data.OleDb命名空间。如果你使用的.NET Framework没有它你可以通过在Package Management Console中输入以下代码来安装它Install-Package System.Data.OleDb。
读取Excel文件并插入到数据库的步骤如下
导入所需的命名空间。创建 Workbook 类的对象并使用 Workbook.LoadFromFile() 方法加载Excel文件。通过 Workbook.Worksheets[] 属性获取第一个工作表。通过访问 Worksheet.Name 属性获取工作表名称作为表名。通过使用 Worksheet.Rows[] 属性访问第一行的 CellRange 对象将每个列的值存储在一个字符串数组中作为列名。使用 OleDbConnection 连接到Access数据库指定连接字符串和数据库文件路径。通过动态生成一个用于创建表的SQL查询字符串包括表名、列名和数据类型创建数据表。使用 OleDbCommand 对象和 ExecuteNonQuery 方法执行创建表的查询。通过遍历Excel工作表的每一行从第二行开始构造带有参数化查询的插入语句将每一行的数据插入Access数据库表中。关闭数据库连接并释放资源。
代码示例 C#
using Spire.Xls;
using System.Data.OleDb;class Program
{static void Main(string[] args){// 设置Excel文件路径string excelFilePath Sample.xlsx;// 设置Access数据库文件路径string accessDbFilePath Sample.accdb;// 加载Excel文件Workbook workbook new Workbook();workbook.LoadFromFile(excelFilePath);// 获取第一个工作表Worksheet worksheet workbook.Worksheets[0];// 使用工作表名称作为表名string tableName worksheet.Name;// 获取第一行作为列名CellRange headerRange worksheet.Rows[0];string[] columnNames new string[headerRange.Columns.Length];for (int i 0; i headerRange.Columns.Length; i){columnNames[i] headerRange.Columns[i].Value.Replace( , _);}// 连接到Access数据库string connectionString $ProviderMicrosoft.ACE.OLEDB.12.0;Data Source{accessDbFilePath};Persist Security InfoFalse;;using (OleDbConnection connection new OleDbConnection(connectionString)){connection.Open();// 创建表string createTableQuery $CREATE TABLE [{tableName}] ({string.Join(, , columnNames.Select(c $[{c}] Memo))});using (OleDbCommand createTableCommand new OleDbCommand(createTableQuery, connection)){createTableCommand.ExecuteNonQuery();}// 插入数据string insertQuery $INSERT INTO [{tableName}] ({string.Join(, , columnNames.Select(c $[{c}]))}) VALUES ({string.Join(, , columnNames.Select(c ${c}))});using (OleDbCommand insertCommand new OleDbCommand(insertQuery, connection)){foreach (CellRange row in worksheet.Rows.Cast().Skip(1)){for (int i 0; i row.Columns.Length; i){insertCommand.Parameters.AddWithValue(${columnNames[i]}, row.Columns[i].Value);}insertCommand.ExecuteNonQuery();insertCommand.Parameters.Clear();}}connection.Close();workbook.Dispose();}}
}读取写入结果 本文中介绍了如何使用 C# 来读取 Excel 文件并提取数据用于各种用途。通过利用 Spire.XLS for .NET 的强大功能开发人员可以高效地处理 Excel 数据、将其导出为不同格式并增强数据驱动型应用程序。本文提供分步指导、代码示例和处理结果的图形展示。如果在使用中遇到任何问题可通过Spire产品论坛获取技术支持。