NOOSL Ответов: 2

Как читать данные excel. xlsb в списки на языке C#


Я хотел бы собрать данные в список на C# из многих книг excel (. xlsb).
Есть ли способ прочитать пару файлов excel и собрать данные в список (кроме цикла)?
Я ниже кода я попытался сначала создать диапазон в excel sheet прочитать этот диапазон в массив, а затем попытаться прочитать в список. Это тоже не работа.

xlRangeDB = xlWorkSheetDB.get_Range("A2", "BA" + lRow.ToString());
                object[,] valueArray = xlRangeDB.Value2;

                List<string> inputData = new List<string>();
                inputData.AddRange(valueArray);


Что я уже пробовал:

Я просмотрел много связанных записей, но то, что я нашел, - это быстро читать, используя массивы, а не список.

2 Ответов

Рейтинг:
6

NOOSL

var inputData = valueArray.Cast<object>().Select(Convert.ToString).ToList();


Это решение работает для меня, Преобразуя массивы в список.


Рейтинг:
0

Pascal-78

Как насчет использования файлов Excel в качестве базы данных (если листы организованы как таблица данных)

string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\"C:\MyExcelFile.xlsx\";Extended Properties=\"Excel 12.0 Xml;HDR=YES\"";
var _connection = new OleDbConnection();
_connection.ConnectionString = connectionString;
_connection.Open();
var _adapter = new OleDbDataAdapter("SELECT * FROM SheetName", _connection);
var _data = new DataSet("SheetName");
_adapter.Fill(this._data);