Я использую OLEDB для подключения и чтения данных из электронной таблицы Excel.У меня IMEX = "1", и все работает нормально.Моя проблема в том, что листы, с которых я читаю, могут начинаться с нескольких пустых строк, и количество пустых строк важно.Например, если я читал сетку 5x5, например:
- - - - -
- - - - -
2 - 3 3 8
- - - - -
- - 5 2 2
, где '-' представляет пустую ячейку.Важно то, что первые две строки пусты.Размер сетки является динамическим.Мой код, кажется, игнорирует первые пустые строки.Но имеет дело с пустой строкой в строке 4, хорошо.
Как подсчитать количество пустых строк в начале листа Excel, используя OLEDB?
Я ограничен использованием OLEDB,Я бы не стал, если бы мне не пришлось; -)
using (var adapter = new OleDbDataAdapter("SELECT * FROM [" + worksheetName + "]", connString)) {
var ds = new DataSet();
adapter.Fill(ds, "FareChart");
table = ds.Tables["FareChart"];
}
Строка подключения:
"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\""
ОБНОВЛЕНИЕ
Указание '.xls 'как расширение файла в строке подключения исправило эту проблему и правильно считывает пустые строки в начале.