MS Excel-Tabellen werden häufig verwendet, um kleine, mittlere oder große Daten zu speichern. In verschiedenen Fällen fungieren Tabellenkalkulationen als Datenbank zum Speichern der Anwendungsdaten. In solchen Situationen müssen Sie möglicherweise die in den Excel Dateien gespeicherten Daten in Ihren Web oder Desktop Anwendungen lesen. In solchen Fällen behandelt dieser Artikel das Konvertieren von Excel Daten in DataTables in C#.

C# Excel zu DataTable-Konvertierungs API

Aspose.Cells for .NET ist eine Klassenbibliothek, mit der Sie Excel-Automatisierungsfunktionen in .NET Anwendungen implementieren können. Darüber hinaus können Sie mit der API Daten aus Excel Arbeitsblättern in wenigen Schritten in ADO.NET DataTable exportieren. Sie können die API entweder herunterladen oder über NuGet installieren.

PM> Install-Package Aspose.Cells

Konvertieren Sie Excel in DataTable in C#

Beim Exportieren von Daten aus Excel Arbeitsblättern in DataTables kann es zwei mögliche Szenarien geben: Die Daten können stark typisiert oder nicht stark typisiert sein. In beiden Fällen können Sie die Konvertierung von Excel in DataTable entsprechend durchführen. Schauen wir uns an, wie man mit einem der oben genannten Szenarien umgeht.

Konvertieren Sie stark typisierte Excel Daten in DataTable in C#

Stark typisierte Daten bedeuten, dass die Werte in einer einzelnen Spalte zu einem bestimmten Datentyp gehören. In solchen Fällen können Sie Excel Daten mithilfe der folgenden Schritte in DataTable in C# exportieren.

Das folgende Codebeispiel zeigt, wie Excel nach DataTable exportiert wird.

// Erstellen Sie einen Dateistream, der die zu öffnende Excel Datei enthält
FileStream fstream = new FileStream("Excel.xlsx", FileMode.Open);

// Instanziieren Sie ein Workbook objekt
//Öffnen der Excel Datei über den Dateistream
Workbook workbook = new Workbook(fstream);

// Greifen Sie auf das erste Arbeitsblatt in der Excel Datei zu
Worksheet worksheet = workbook.Worksheets[0];

// Exportieren Sie den Inhalt von 2 Zeilen und 2 Spalten beginnend mit der 1. Zelle in DataTable
DataTable dataTable = worksheet.Cells.ExportDataTable(0, 0,2, 2, true);

// Binden Sie die DataTable mit DataGrid
dataGridView1.DataSource = dataTable;

// Schließen Sie den Dateistream, um alle Ressourcen freizugeben
fstream.Close();

Konvertieren Sie nicht stark typisierte Excel Daten in DataTable in C#

Sehen wir uns nun den anderen Fall an, in dem Werte im Arbeitsblatt nicht stark typisiert sind. Das bedeutet, dass sie keinem bestimmten Datentyp angehören. Im Folgenden finden Sie die Schritte zum Exportieren von Excel Daten in DataTable in diesem Fall.

Das folgende Codebeispiel zeigt, wie nicht stark typisierte Daten aus Excel in DataTable in C# exportiert werden.

// Erstellen Sie einen Dateistream, der die zu öffnende Excel Datei enthält
FileStream fstream = new FileStream("Excel.xlsx", FileMode.Open);

// Instanziieren Sie ein Workbook objekt
//Öffnen der Excel Datei über den Dateistream
Workbook workbook = new Workbook(fstream);

// Greifen Sie auf das erste Arbeitsblatt in der Excel Datei zu
Worksheet worksheet = workbook.Worksheets[0];

// Exportieren Sie den Inhalt von 2 Zeilen und 2 Spalten beginnend mit der 1. Zelle in DataTable
DataTable dataTable = worksheet.Cells.ExportDataTableAsString(0, 0, 2, 2, true);

// Binden Sie die DataTable mit DataGrid
dataGridView1.DataSource = dataTable;

// Schließen Sie den Dateistream, um alle Ressourcen freizugeben
fstream.Close();

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um die API ohne Evaluierungseinschränkungen zu testen.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Excel Daten mithilfe von C# in ADO.NET DataTables exportieren oder konvertieren. Das Schritt-für-Schritt-Tutorial und die Codebeispiele haben gezeigt, wie mit stark typisierten und nicht stark typisierten Daten in den Arbeitsblättern umgegangen wird. Weitere Informationen zur C# Excel-API finden Sie unter Dokumentation.

Siehe auch