使用 c# .net 读取 Excel 问题
我使用 C# 从 Excel 工作表中读取数据。
这是我的代码并且它正在工作。
var fileName = @"C:\Users\yohan\Desktop\Brandix\y.xlsx";
var connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0; data source= {0}; Extended Properties=Excel 12.0;", fileName);
var adapter = new OleDbDataAdapter("SELECT * FROM [BOM$]", connectionString);
var ds = new DataSet();
adapter.Fill(ds);
DataTable data = ds.Tables[0];
但它总是跳过 Excel 工作表的顶行,这是为什么呢? 请帮忙...!!
谢谢 约翰
I read data from excel sheet using C#.
Here is my code and it is working.
var fileName = @"C:\Users\yohan\Desktop\Brandix\y.xlsx";
var connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0; data source= {0}; Extended Properties=Excel 12.0;", fileName);
var adapter = new OleDbDataAdapter("SELECT * FROM [BOM$]", connectionString);
var ds = new DataSet();
adapter.Fill(ds);
DataTable data = ds.Tables[0];
But it always skip the top row of the excel sheet why is that ?
Please help ...!!
Thank You
yohan
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这是 DataAdapter 的正常行为。顶行被视为标题行或“列名称”行。
要更改此行为,请将属性“HDR=NO”添加到连接字符串的扩展属性中,
示例:
That is the normal behaviour of the DataAdapter. The top row is considered as an Header Row or a "Column Name" Row.
To change this behaviour add to the Extended Properties of your connection string the property "HDR=NO"
Example:
尝试将 HDR=NO 添加到扩展属性中。
有关详细信息,请参阅此链接
Try adding HDR=NO to the extended properties.
see this link for details
尝试将连接字符串更改为...
请参阅此页面以尝试更多可能的连接字符串。 HDR 设置确定提供程序是否将顶行视为列名称。
Try changing your connection string to ...
See this page for more possible connection strings to try. The HDR setting determines wether the provider considers the top row to be column names.
在服务器端应用程序中读取 Excel 文件的推荐方法是 Open XML。
您可以尝试安装 ACE 组件,但它仍然不推荐且不受支持。
要使用 Open XML,您可以访问以下链接,这将帮助您在代码中使用 Open XML 来读取 Excel 文件 -
Link1
链接2
链接3
Recommended way to read an Excel file in Server side app is Open XML.
You can try installing ACE component but still it remains un-recommended and unsupported.
For using Open XML you can go through below links which will help you using Open XML in your code for reading excel files -
Link1
Link2
Link3