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# API zum Exportieren von Excel Daten in DataTable
- Excel zu DataTable in C#
- Konvertieren Sie stark typisierte Excel Daten in DataTable
- Konvertieren Sie nicht stark typisierte Excel Daten in DataTable
- Holen Sie sich eine kostenlose Lizenz
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.
- Verwenden Sie die Klasse Workbook, um die Excel Datei zu laden.
- Holen Sie sich das Arbeitsblatt, das Sie exportieren möchten, in ein Worksheet objekt.
- Verwenden Sie die Methode Worksheet.Cells.ExportDataTable(int, int, int, int, bool), um Daten in ein DataTable objekt zu exportieren.
- Verwenden Sie DataTable als Datenquelle.
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.
- Verwenden Sie die Klasse Workbook, um die Excel Datei zu laden.
- Wählen Sie das Arbeitsblatt aus, das Sie in ein Worksheet objekt exportieren möchten.
- Verwenden Sie die Methode Worksheet.Cells.ExportDataTableAsString(int, int, int, int, bool), um Daten in ein DataTable objekt zu exportieren.
- Verwenden Sie DataTable als Datenquelle.
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.