首页 > 后端开发 > C++ > 如何使用OLEDB在C#中直接读取Excel文件?

如何使用OLEDB在C#中直接读取Excel文件?

Patricia Arquette
发布: 2025-02-01 11:46:10
原创
252 人浏览过

How Can I Directly Read Excel Files in C# Using OleDb?

>直接使用OLEDB

在C#中读取Excel文件

许多C#应用程序需要能够从Excel文件中读取数据。 几个库简化了此过程,可直接访问Excel数据。 OLEDB库是一个受欢迎的开源选择。

>

这是使用OLEDB从Excel文件读取数据的方法:>

string fileName = Path.Combine(Directory.GetCurrentDirectory(), "fileNameHere.xlsx"); //Improved path handling
string connectionString = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={fileName};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1;\""; //Updated for newer Excel versions

using (OleDbConnection connection = new OleDbConnection(connectionString))
{
    connection.Open();
    OleDbDataAdapter adapter = new OleDbDataAdapter($"SELECT * FROM [{worksheetNameHere}$]", connection);
    DataSet ds = new DataSet();
    adapter.Fill(ds, "dataTable");

    DataTable data = ds.Tables["dataTable"];

    foreach (DataRow row in data.Rows)
    {
        string cellValue = row["columnName"].ToString();
        //Process cellValue
    }

    // Accessing data directly as strings:
    string cellValueDirect = data.Rows[0].Field<string>("columnName");
    //Process cellValueDirect

}
登录后复制
此改进的代码建立连接,从指定的工作表中选择数据,然后将其存储在数据表中。 单个单元格可通过坐标或列名访问。

语句可确保正确的资源清理。 更新了连接字符串以支持较新的Excel版本(XLSX),并包括using>和HDR=YES,以更好地处理标头和数据类型。IMEX=1>

示例通过行迭代,并演示了如何使用

ToString()来检索字符串的细胞值。 OLEDB提供了一种直接的方法,可以将Excel数据导入您的C#应用​​程序进行分析和操纵。

以上是如何使用OLEDB在C#中直接读取Excel文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板