Чтобы импортировать данные из файла Excel на C#, вы можете использовать различные методы и библиотеки. Вот несколько распространенных подходов:
- Использование библиотек Microsoft Office Interop. Вы можете использовать пространство имен
Microsoft.Office.Interop.Excelдля чтения данных из файлов Excel. Для этого метода требуется, чтобы Microsoft Office был установлен на компьютере, на котором работает ваше приложение. Вы можете ссылаться на сборкуMicrosoft.Office.Interop.Excelв своем проекте и использовать предоставленные классы и методы для открытия и чтения файлов Excel.
using Excel = Microsoft.Office.Interop.Excel;
// ...
Excel.Application excelApp = new Excel.Application();
Excel.Workbook workbook = excelApp.Workbooks.Open("path_to_excel_file");
Excel.Worksheet worksheet = workbook.Sheets[1]; // Assuming the data is on the first sheet
// Read data from cells
var value = worksheet.Cells[row, column].Value;
// Close Excel objects
workbook.Close();
excelApp.Quit();
- Использование сторонних библиотек. Существует несколько сторонних библиотек, которые предоставляют более удобные и многофункциональные методы работы с файлами Excel. Одной из популярных библиотек является EPPlus, которая доступна в виде пакета NuGet. Вы можете установить его в свой проект и использовать его API для чтения данных Excel. Вот пример:
using OfficeOpenXml;
// ...
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
using (var package = new ExcelPackage(new FileInfo("path_to_excel_file")))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets[0]; // Assuming the data is on the first sheet
// Read data from cells
var value = worksheet.Cells[row, column].Value;
}
- Использование поставщика OLEDB. Вы также можете использовать поставщика OLEDB для чтения файлов Excel. Этот метод позволяет вам рассматривать файл Excel как базу данных и запрашивать его с помощью операторов SQL. Вот пример:
using System.Data.OleDb;
// ...
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=path_to_excel_file;Extended Properties=\"Excel 12.0;HDR=YES;\"";
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connection.Open();
OleDbCommand command = new OleDbCommand("SELECT * FROM [Sheet1$]", connection); // Assuming the data is on the first sheet
OleDbDataReader reader = command.ExecuteReader();
while (reader.Read())
{
// Read data from columns
var value = reader["ColumnName"];
}
}
Это всего лишь несколько способов импорта данных из Excel в C#. Не забывайте обрабатывать исключения и корректировать код в соответствии с вашими конкретными требованиями.