Leer archivo XLSX en C#
-
Leer archivo XLSX con el paquete
LinqToExcel
enC#
-
Leer archivo XLSX con el paquete
ExcelDataReader
enC#
Este tutorial discutirá los métodos para leer un archivo xlsx de Excel en C#.
Leer archivo XLSX con el paquete LinqToExcel
en C#
El paquete LinqToExcel
se utiliza para consultar archivos de Excel con LINQ en C#. Facilita la obtención de datos filtrados de un archivo de Excel en C#. El paquete LinqToExcel
es un paquete externo y debe instalarse primero para que este enfoque funcione. Podemos instalar este paquete usando el administrador de paquetes NuGet buscando linqtoexcel
en el administrador de paquetes NuGet. También necesitamos instalar el Motor de base de datos de Microsoft Access para el paquete LinqToExcel
. Cuando el paquete LinqToExcel
y el motor de base de datos de Microsoft Access estén finalmente instalados, podemos leer los archivos xlsx. Vea el siguiente ejemplo de código.
using ExcelDataReader;
using System.IO;
using System.Linq;
namespace read_excel_file {
class Program {
static void Main(string[] args) {
var excelFile = new LinqToExcel.ExcelQueryFactory(@"C:\File\Classes.xlsx");
var result = from row in excelFile.Worksheet("Sheet1") let item =
new {
RollNumber = row["Roll Number"].Cast<string>(),
Name = row["Name"].Cast<string>(),
Class = row["Class"].Cast<string>(),
}
where item.Class == "5" select item;
}
}
}
En el código anterior, usamos LINQ para consultar a través del archivo C:\File\Classes.xlsx
y obtener contenido filtrado de la Sheet1
con el paquete LinqToExcel
en C#. Guardamos el valor resultante de la consulta dentro de la variable result
.
Leer archivo XLSX con el paquete ExcelDataReader
en C#
También podemos usar el paquete ExcelDataReader
para leer datos de archivos Excel en C#. El paquete ExcelDataReader
también es un paquete externo y no viene preinstalado con el marco .NET
. Necesitamos instalarlo para que este enfoque funcione. Podemos instalar este paquete simplemente buscando el exceldatareader
en el administrador de paquetes NuGet. El siguiente ejemplo de código nos muestra cómo podemos leer datos de un archivo xlsx con el paquete ExcelDataReader
en C#.
using System.Data;
using System.IO;
using System.Linq;
namespace read_excel_file {
class Program {
static void Main(string[] args) {
FileStream fStream = File.Open(@"C:\File\Classes.xlsx", FileMode.Open, FileAccess.Read);
IExcelDataReader excelDataReader = ExcelReaderFactory.CreateOpenXmlReader(fStream);
DataSet resultDataSet = excelDataReader.AsDataSet();
excelDataReader.Close();
}
}
}
En el código anterior, leemos los datos dentro del archivo C:\File\Classes.xlsx
con el paquete ExcelDataReader
en C#. Guardamos los datos resultantes en forma de tablas dentro de la variable resultDataSet
. Al final, liberamos los recursos de la instancia excelDataReader
con la función excelDataReader.Close()
en C#.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn