Leggere file XLSX in C#
-
Leggere file XLSX con il pacchetto
LinqToExcel
inC#
-
Leggere file XLSX con il pacchetto
ExcelDataReader
inC#
Questo tutorial discuterà i metodi per leggere un file xlsx di Excel in C#.
Leggere file XLSX con il pacchetto LinqToExcel
in C#
Il pacchetto LinqToExcel
viene utilizzato per interrogare i file Excel con LINQ in C#. Rende facile ottenere dati filtrati da un file Excel in C#. Il pacchetto LinqToExcel
è un pacchetto esterno e deve essere installato prima affinché questo approccio funzioni. Possiamo installare questo pacchetto utilizzando il gestore di pacchetti NuGet cercando linqtoexcel
nel gestore di pacchetti NuGet. Dobbiamo anche installare il Microsoft Access Database Engine per il pacchetto LinqToExcel
. Quando sia il pacchetto LinqToExcel
che il motore di database di Microsoft Access saranno finalmente installati, potremo leggere i file xlsx. Vedere il seguente esempio di codice.
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;
}
}
}
Nel codice sopra, abbiamo usato LINQ per interrogare attraverso il file C:\File\Classes.xlsx
e ottenere il contenuto filtrato dal Sheet1
con il pacchetto LinqToExcel
in C#. Abbiamo salvato il valore risultante della query all’interno della variabile result
.
Leggere file XLSX con il pacchetto ExcelDataReader
in C#
Possiamo anche utilizzare il pacchetto ExcelDataReader
per leggere i dati dai file Excel in C#. Anche il pacchetto ExcelDataReader
è un pacchetto esterno e non è preinstallato con il framework .NET
. Dobbiamo installarlo affinché questo approccio funzioni. Possiamo installare questo pacchetto semplicemente cercando in exceldatareader
nel gestore di pacchetti NuGet. Il seguente esempio di codice ci mostra come leggere i dati da un file xlsx con il pacchetto ExcelDataReader
in 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();
}
}
}
Nel codice sopra, leggiamo i dati all’interno del file C:\File\Classes.xlsx
con il pacchetto ExcelDataReader
in C#. Abbiamo salvato i dati risultanti sotto forma di tabelle all’interno della variabile resultDataSet
. Alla fine, liberiamo le risorse tenute dall’istanza excelDataReader
con la funzione excelDataReader.Close()
in 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