Иван
18.04.2025
Интересует метод чтения данных из файла Excel с сохранением значений ячеек файла в словарь программы, если можно на примерах.
Операционная система: Windows
Статус: вопрос решён
Вячеслав
клиент
18.04.2025
Иван, попробуйте так:
public static DataTable ReadExcelFile(string filePath)
{
// Проверка существования файла
if (!File.Exists(filePath))
throw new FileNotFoundException("Файл не найден");
// Открываем файл Excel
using var workbook = new XLWorkbook(filePath);
IXLWorksheet worksheet = workbook.Worksheet(1); // Читаем первый лист
// Создаем таблицу для хранения данных
var dataTable = new DataTable();
// Добавляем столбцы таблицы
foreach (var firstRowCell in worksheet.Row(1).Cells())
{
dataTable.Columns.Add(firstRowCell.Value.ToString());
}
// Заполняем строки таблицей
for (int i = 2; i <= worksheet.RowsUsed().Count(); i++)
{
var row = worksheet.Row(i);
var values = new object[row.CellsUsed().Count()];
int columnIndex = 0;
foreach (var cell in row.Cells())
{
values[columnIndex++] = cell.Value?.ToString() ?? string.Empty;
}
dataTable.Rows.Add(values);
}
return dataTable;
}
Далее можете адаптировать под конкретную задачу
Чтобы комментировать, необходимо авторизоваться или зарегистрироваться.
Все советы и рекомендации, размещённые на форуме, носят исключительно информационный характер и не являются официальной инструкцией.
Перед применением любых советов убедитесь в их актуальности и безопасности для вашей конкретной ситуации.