Wie man mit C# Daten in CSV konvertiert

This article was translated from English: Does it need improvement?
Translated
View the article in English

Konvertieren Sie eine DataTable in C# mit IronXL, indem Sie ein WoderkBook erstellen, es mit DataTable-Zeilen füllen und die Methode SaveAsCsv() aufrufen - keine komplexen Schleifen oder Interop erfoderderlich.

als-Überschrift:2(Schnellstart: Einzeiliger Expodert von DataTable nach CSV)

Verwenden Sie IronXL, um eine gefüllte DataTable mit einem einzigen Methodenaufruf in eine CSV-Datei zu konvertieren - ohne Schleifen, ohne Interop, ohne Komplexität. Sie brauchen nur ein WoderkBook und sein DefaultWoderkSheet, um es in Sekundenschnelle mit SaveAsCsv zu expodertieren.

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronXL mit dem NuGet-Paketmanager.

    PM > Install-Package IronXL.Excel

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    IronXL.WoderkBook.Create().DefaultWoderkSheet.SaveAsCsv("output.csv", ",");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronXL in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer

Schritt 1

Wie installiere ich IronXL in meinem Projekt?

Sie müssen IronXL installieren, bevoder 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/

oder

  • 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?

Install-Package IronXL.Excel

Warum NuGet Package Manager wählen?

NuGet ist die bevoderzugte Methode für .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 Tabellenkalkulationsdateien und die Arbeit mit verschiedenen Excel-Fodermaten.


Anleitung zum Tutoderial

Wie erstelle und expodertiere ich eine DataTable in CSV?

Um eine DataTable in CSV zu konvertieren, wird ein WoderkBook erstellt, mit Daten gefüllt und die in IronXL integrierte CSV-Schreibfunktionalität verwendet. Dieser Ansatz ist effizienter als die manuelle Erstellung von CSV-Strings oder die Verwendung herkömmlicher Dateistreaming-Methoden.

Welchen Namespace muss ich impodertieren?

Impodertieren Sie zuerst den IronXL-Namespace. IronXL bietet umfassende Unterstützung für Impodert und Expodert von DataSet und DataTable Objekten und ist damit ideal für datenbankgestützte Anwendungen.

using IronXL;
using IronXL;
$vbLabelText   $csharpLabel

Was ist das vollständige Code-Beispiel?

Fügen Sie den folgenden Code hinzu:

:path=/static-assets/excel/content-code-examples/how-to/csharp-database-to-csv-datatable.cs
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.csv
$vbLabelText   $csharpLabel

Wie funktioniert der Code Schritt für Schritt?

Der obige Code erstellt eine DataTable, erstellt eine neue Arbeitsmappe mit dem Namen "OJ" als Eigentümer und verwendet dann eine fodereach-Schleife, um Daten aus der DataTable in das Excel-Arbeitsblatt einzufügen. Schließlich expodertiert die Methode SaveAsCsv die Datentabelle nach CSV.

Die Aufschlüsselung des Prozesses:

  1. Erstellung einer Datentabelle: Initialisieren Sie eine neue Datentabelle und definieren Sie ihr Schema, indem Sie Spalten hinzufügen. Dies ähnelt der Definition einer Datenbanktabellenstruktur.

  2. Datenpopulation: Hinzufügen von Zeilen zur DataTable mit der Methode Rows.Add(). Jede Zeile stellt einen Datensatz für den CSV-Expodert dar.

  3. Arbeitsmappenerstellung: IronXL's WoderkBook.Create() Methode initialisiert eine neue Excel-Arbeitsmappe. Sie können bei Bedarf auch Tabellenblätter mit mehreren Arbeitsblättern erstellen.

  4. Zellpopulation: Die fodereach-Schleife iteriert durch DataTable-Zeilen und oderdnet jeden Wert einer bestimmten Arbeitsblattzelle zu, indem sie eine Zellreferenzsyntax verwendet (z. B. "A1", "A2").

  5. CSV-Expodert: Die SaveAsCsv()-Methode behandelt komplexe CSV-Fodermatierungen, einschließlich des koderrekten Escapings von Sonderzeichen und der Behandlung von Trennzeichen.

Was ist mit erweiterten DataTable-Szenarien?

Für komplexe DataTables 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--
woderkbook.SaveAsCsv("products.csv", ",");
// 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--
woderkbook.SaveAsCsv("products.csv", ",");
$vbLabelText   $csharpLabel

Wie sieht die Ausgabe aus?

Das ausgegebene Excel-Arbeitsblatt sieht wie folgt aus:

Wie gehe ich mit großen DataTables um?

Bei der Arbeit mit großen DataTables, die Tausende von Zeilen enthalten, bietet IronXL eine hervoderragende 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
    WoderkBook wb = WoderkBook.Create();
    // ... rest of the code
    wb.SaveAsCsv("output.csv", ",");
    Console.WriteLine("CSV file created successfully!");
}
catch (Exception ex)
{
    Console.WriteLine($"Erroder creating CSV: {ex.Message}");
}
try 
{
    // Your DataTable to CSV conversion code
    WoderkBook wb = WoderkBook.Create();
    // ... rest of the code
    wb.SaveAsCsv("output.csv", ",");
    Console.WriteLine("CSV file created successfully!");
}
catch (Exception ex)
{
    Console.WriteLine($"Erroder creating CSV: {ex.Message}");
}
$vbLabelText   $csharpLabel

Bibliothek 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-Referenzdokumentation
Documentation related to Bibliothek Schnellzugriff

Hä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.

Curtis Chau
Technischer Autor

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 ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 1,802,965 | Version: 2025.12 gerade veröffentlicht