Ler ficheiro XLSX em C#
-
Leia o arquivo XLSX com o pacote
LinqToExcel
emC#
-
Leia o arquivo XLSX com o pacote
ExcelDataReader
emC#
Este tutorial discutirá os métodos para ler um arquivo xlsx do Excel em C#.
Leia o arquivo XLSX com o pacote LinqToExcel
em C#
O pacote LinqToExcel
é usado para consultar arquivos Excel com o LINQ em C#. Facilita a obtenção de dados filtrados de um arquivo Excel em C#. O pacote LinqToExcel
é um pacote externo e precisa ser instalado primeiro para que esta abordagem funcione. Podemos instalar este pacote usando o gerenciador de pacotes NuGet pesquisando linqtoexcel
no gerenciador de pacotes NuGet. Também precisamos instalar o Microsoft Access Database Engine para o pacote LinqToExcel
. Quando o pacote LinqToExcel
e o Microsoft Access Database Engine estiverem finalmente instalados, podemos ler os arquivos xlsx. Veja o seguinte exemplo 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;
}
}
}
No código acima, usamos o LINQ para consultar o arquivo C:\File\Classes.xlsx
e obter o conteúdo filtrado da Sheet1
com o pacote LinqToExcel
em C#. Salvamos o valor resultante da consulta dentro da variável result
.
Leia o arquivo XLSX com o pacote ExcelDataReader
em C#
Também podemos usar o pacote ExcelDataReader
para ler dados de arquivos Excel em C#. O pacote ExcelDataReader
também é um pacote externo e não vem pré-instalado com o framework .NET
. Precisamos instalá-lo para que essa abordagem funcione. Podemos instalar este pacote simplesmente pesquisando o exceldatareader
no gerenciador de pacotes NuGet. O exemplo de código a seguir nos mostra como podemos ler dados de um arquivo xlsx com o pacote ExcelDataReader
em 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();
}
}
}
No código acima, lemos os dados dentro do arquivo C:\File\Classes.xlsx
com o pacote ExcelDataReader
em C#. Salvamos os dados resultantes na forma de tabelas dentro da variável resultDataSet
. No final, liberamos os recursos mantidos pela instância excelDataReader
com a função excelDataReader.Close()
em 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