How to Use C# to Convert Datatable to CSV
Konvertieren Sie ein DataTable in eine CSV-Datei in C# mit IronXL, indem Sie ein WorkBook erstellen, es mit DataTable Zeilen füllen und die SaveAsCsv() Methode aufrufen - keine komplexen Schleifen oder Interop erforderlich.
DataTable zu CSV
Verwenden Sie IronXL, um ein ausgefülltes DataTable in eine CSV-Datei mit einem einzigen Methodenaufruf zu konvertieren – keine Schleifen, kein Interop, keine Komplexität. Sie benötigen nur ein WorkBook und dessen DefaultWorkSheet, um mit SaveAsCsv in Sekundenschnelle zu exportieren.
-
1Install IronXL with NuGet Package Manager
-
2Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
IronXL.WorkBook.Create().DefaultWorkSheet.SaveAsCsv("output.csv", ",");C# -
3Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronXL in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- Herunterladen und Installieren von convert DataTable to CSV C# Library
- Verwenden Sie die
DataTableKlasse, um neue Daten zu speichern - Neue Tabellenkalkulation erstellen oder bestehende importieren
- Schleife durch Tabellenzeilen und entsprechende Füllung der Zellen im Arbeitsblatt
- Export in eine CSV-Datei mit der C#-Funktion
SaveAsCsv
Schritt 1
Wie installiere ich IronXL in meinem Projekt?
Sie müssen IronXL installieren, bevor Sie es in Ihren Anwendungen verwenden können. IronXL bietet mehrere Installationsoptionen für Ihre Projekte. IronXL ist eine Bibliothek, die die Arbeit mit Excel-Dateien in C# vereinfacht, ohne dass Microsoft Excel oder Interop installiert werden müssen.
Welche Installationsmethode sollte ich verwenden?
Der Download erfolgt von der offiziellen Website über den folgenden Link: https://ironsoftware.com/csharp/excel/docs/
or
- Wählen Sie in Visual Studio das Menü Projekt aus
- Klicken Sie auf NuGet-Pakete verwalten
- Suchen Sie nach
IronXL.Excel - Klicken Sie auf Installieren
Welchen NuGet-Befehl sollte ich verwenden?
Warum NuGet Package Manager wählen?
NuGet ist die bevorzugte Methode for .NET-Entwickler, da es automatisch Abhängigkeiten verwaltet und Bibliotheken auf dem neuesten Stand hält. Das IronXL-Paket enthält alle notwendigen Komponenten für die Konvertierung von Tabellenkalkulationsdateitypen und die Arbeit mit verschiedenen Excel-Formaten.
Anleitung zum Tutorial
Wie erstelle und exportiere ich ein DataTable in eine CSV-Datei?
Der Prozess der Konvertierung eines DataTable in CSV beinhaltet das Erstellen eines WorkBook, das Befüllen mit Daten und die Verwendung der eingebauten CSV-Schreibfunktionalität von IronXL. Dieser Ansatz ist effizienter als die manuelle Erstellung von CSV-Strings oder die Verwendung herkömmlicher Dateistreaming-Methoden.
Welchen Namespace muss ich importieren?
Importieren Sie zuerst den IronXL-Namespace. IronXL bietet umfassende Unterstützung für das Importieren und Exportieren von DataSet- und DataTable-Objekten, was es ideal für datenbankgesteuerte Anwendungen macht.
using IronXL;Imports IronXLWas ist das vollständige Code-Beispiel?
Fügen Sie den folgenden Code hinzu:
using IronXL;
using System;
using System.Data;
// Create a new DataTable object
DataTable table = new DataTable();
// Add a single column named "Example_DataSet" of type string
table.Columns.Add("Example_DataSet", typeof(string));
// Add rows to the DataTable
table.Rows.Add("0");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
// Create a new Excel workbook and set its author metadata
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "OJ";
// Get the default worksheet
WorkSheet ws = wb.DefaultWorkSheet;
// Initialize rowCounter for Excel sheet rows
int rowCount = 1;
// Loop through each row in the DataTable and add the data to the Excel worksheet
foreach (DataRow row in table.Rows)
{
// Populate worksheet cells with data from DataTable
ws["A" + (rowCount)].Value = row[0].ToString();
rowCount++;
}
// Save the workbook as a CSV file
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";"); // Will be saved as: Save_DataTable_CSV.Sheet1.csvImports IronXL
Imports System
Imports System.Data
' Create a new DataTable object
Dim table As New DataTable()
' Add a single column named "Example_DataSet" of type string
table.Columns.Add("Example_DataSet", GetType(String))
' Add rows to the DataTable
table.Rows.Add("0")
table.Rows.Add("1")
table.Rows.Add("2")
table.Rows.Add("3")
table.Rows.Add("1")
table.Rows.Add("2")
table.Rows.Add("3")
' Create a new Excel workbook and set its author metadata
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "OJ"
' Get the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet
' Initialize rowCounter for Excel sheet rows
Dim rowCount As Integer = 1
' Loop through each row in the DataTable and add the data to the Excel worksheet
For Each row As DataRow In table.Rows
' Populate worksheet cells with data from DataTable
ws("A" & rowCount).Value = row(0).ToString()
rowCount += 1
Next
' Save the workbook as a CSV file
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";") ' Will be saved as: Save_DataTable_CSV.Sheet1.csvWie funktioniert der Code Schritt für Schritt?
Der obige Code erstellt ein DataTable, erstellt ein neues Arbeitsbuch und gibt 'OJ' als dessen Besitzer an und verwendet dann eine Foreach-Schleife, um Daten aus dem DataTable in das Excel-Arbeitsblatt einzufügen. Schließlich exportiert die SaveAsCsv-Methode die Datentabelle in CSV.
Die Aufschlüsselung des Prozesses:
-
DataTable-Erstellung: Initialisieren Sie eine neue
DataTableund definieren Sie deren Schema, indem Sie Spalten hinzufügen. Dies ähnelt der Definition einer Datenbanktabellenstruktur. -
Datenerfassung: Fügen Sie der
DataTableZeilen mit derRows.Add()Methode hinzu. Jede Zeile stellt einen Datensatz für den CSV-Export dar. -
Erstellung des Arbeitsbuchs: IronXL's
WorkBook.Create()-Methode initialisiert ein neues Excel-Arbeitsbuch. Sie können bei Bedarf auch Tabellenblätter mit mehreren Arbeitsblättern erstellen. -
Zellenbefüllung: Die Foreach-Schleife durchläuft
DataTableZeilen und ordnet jeden Wert einer bestimmten Zelle im Arbeitsblatt mithilfe der Zellreferenzsyntax zu (z. B. "A1", "A2"). -
CSV-Export: Die
SaveAsCsv()-Methode kümmert sich um die CSV-Formatierungskomplexitäten, einschließlich der ordnungsgemäßen Maskierung von Sonderzeichen und der Handhabung von Trennzeichen.
Was ist mit erweiterten DataTable-Szenarien?
Für komplexe DataTable mit mehreren Spalten erweitern Sie den Code wie folgt:
// Create a DataTable with multiple columns
DataTable advancedTable = new DataTable();
advancedTable.Columns.Add("ID", typeof(int));
advancedTable.Columns.Add("Name", typeof(string));
advancedTable.Columns.Add("Price", typeof(decimal));
--snip--
workbook.SaveAsCsv("products.csv", ",");' Create a DataTable with multiple columns
Dim advancedTable As New DataTable()
advancedTable.Columns.Add("ID", GetType(Integer))
advancedTable.Columns.Add("Name", GetType(String))
advancedTable.Columns.Add("Price", GetType(Decimal))
' --snip--
workbook.SaveAsCsv("products.csv", ",")Wie sieht die Ausgabe aus?
Das ausgegebene Excel-Arbeitsblatt sieht wie folgt aus:
Wie gehe ich mit großen DataTable um?
Beim Arbeiten mit großen DataTable, die Tausende von Zeilen enthalten, sorgt IronXL für hervorragende Leistung. Die Bibliothek kann umfangreiche Datensätze effizient verarbeiten. Für Produktionsumgebungen wenden Sie bitte Ihren Lizenzschlüssel an, um Wasserzeichen zu entfernen und die volle Funktionalität zu aktivieren.
Was ist mit der Fehlerbehandlung?
Implementieren Sie bei der Arbeit mit Dateioperationen immer eine angemessene Fehlerbehandlung:
try
{
// Your DataTable to CSV conversion code
WorkBook wb = WorkBook.Create();
// ... rest of the code
wb.SaveAsCsv("output.csv", ",");
Console.WriteLine("CSV file created successfully!");
}
catch (Exception ex)
{
Console.WriteLine($"Error creating CSV: {ex.Message}");
}Try
' Your DataTable to CSV conversion code
Dim wb As WorkBook = WorkBook.Create()
' ... rest of the code
wb.SaveAsCsv("output.csv", ",")
Console.WriteLine("CSV file created successfully!")
Catch ex As Exception
Console.WriteLine($"Error creating CSV: {ex.Message}")
End TryBibliothek Schnellzugriff
IronXL API-Referenzdokumentation
Erfahren Sie mehr und teilen Sie mit anderen, wie Sie Zellen in Excel-Tabellen zusammenführen, aufheben und mit ihnen arbeiten können, indem Sie die praktische IronXL.API-Referenzdokumentation verwenden.
IronXL API-ReferenzdokumentationHäufig gestellte Fragen
Wie konvertiere ich in C# eine DataTable in CSV, ohne komplexe Schleifen zu schreiben?
IronXL bietet eine einfache Ein-Zeilen-Lösung, um DataTable in CSV zu konvertieren. Nachdem Sie ein WorkBook erstellt und es mit Ihren DataTable-Daten gefüllt haben, können Sie die SaveAsCsv()-Methode verwenden, um direkt in das CSV-Format zu exportieren, ohne Schleifen zu schreiben oder Interop zu verwenden.
Welche Installationsoptionen gibt es für die DataTable-to-CSV-Konvertierungsbibliothek?
IronXL kann über den NuGet Package Manager in Visual Studio installiert werden, indem man nach "IronXL.Excel" sucht oder die NuGet-Befehlszeile verwendet. Dies ist die bevorzugte Methode, da sie automatisch Abhängigkeiten verwaltet und die Bibliothek auf dem neuesten Stand hält.
Muss ich Microsoft Excel installiert haben, um DataTable in CSV zu konvertieren?
Nein, IronXL arbeitet unabhängig, ohne dass Microsoft Excel oder Interop installiert werden müssen. Es handelt sich um eine eigenständige Bibliothek, die die Arbeit mit Excel-Dateien und CSV-Exporten in C#-Anwendungen vereinfacht.
Welchen Namespace muss ich für die Konvertierung von DataTable in CSV importieren?
Sie müssen den IronXL-Namensraum importieren, indem Sie "using IronXL;" am Anfang Ihrer C#-Datei hinzufügen. Dies ermöglicht den Zugriff auf umfassende Unterstützung für den Import und Export von DataSet- und DataTable-Objekten.
Kann ich beim Export in CSV ein benutzerdefiniertes Trennzeichen angeben?
Ja, mit der Methode SaveAsCsv() von IronXL können Sie ein benutzerdefiniertes Trennzeichen angeben. Im Beispielcode wird ein Komma (",") als Begrenzungszeichen verwendet, aber Sie können dies in ein beliebiges Zeichen ändern, das Ihren Anforderungen entspricht.
How does IronXL handle large DataTables?
IronXL is designed to efficiently manage large DataTables, ensuring excellent performance even with datasets containing thousands of rows. It's optimized for handling substantial data workloads in production environments.
What should I do if I encounter errors during CSV export?
Implement proper error handling using try-catch blocks in your code. This approach will help you catch exceptions and provide informative error messages, ensuring the stability of your CSV export process.
Why is NuGet the preferred installation method for IronXL?
NuGet is favored by .NET developers because it automatically manages dependencies, ensures library versions are current, and simplifies the integration process. IronXL installed via NuGet includes all necessary components for handling Excel files.
What is the output format when exporting a DataTable to CSV using IronXL?
The output is a well-structured CSV file where each row of the DataTable corresponds to a line in the CSV, and each column corresponds to a field. IronXL ensures the correct formatting, handling delimiters and special characters.
How do I apply my IronXL license key to avoid watermarks?
To remove watermarks and unlock full functionality, apply your IronXL license key in a production environment by setting it through the IronXL library's licensing method. This ensures your exports are unmarked and ready for distribution.

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.

