相关疑难解决方法(0)

从Excel读取时如何计算空行

我正在使用OLEDB来连接和读取Excel电子表格中的数据.我有IMEX ="1",一切正常.我的问题是我正在读取的工作表可能以几个空行开头,空行数很重要.例如,如果我正在读取5x5网格,如:

- - - - -
- - - - -
2 - 3 3 8
- - - - -
- - 5 2 2
Run Code Online (Sandbox Code Playgroud)

其中' - '代表一个空单元格.前两行是空的这一事实很重要.网格的大小是动态的.我的代码似乎忽略了第一个空行.但处理第4行的空行确定.

如何使用OLEDB计算Excel工作表开头的空行数?

我被限制使用OLEDB,如果我没有,我就不会;-)

using (var adapter = new OleDbDataAdapter("SELECT * FROM [" + worksheetName + "]", connString)) {
  var ds = new DataSet();
  adapter.Fill(ds, "FareChart");
  table = ds.Tables["FareChart"];
}
Run Code Online (Sandbox Code Playgroud)

连接字符串:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Windows\\TEMP\\e1842f90-74a7-42f2-a6fa-208396a1072e;Extended Properties=\"Excel 8.0;IMEX=1;HDR=No\""
Run Code Online (Sandbox Code Playgroud)

UPDATE

在连接字符串中指定'.xls'作为文件扩展名修复了此问题,并在开始时正确读取空行.

c# oledb excel

5
推荐指数
1
解决办法
2125
查看次数

标签 统计

c# ×1

excel ×1

oledb ×1