Zum Fußzeileninhalt springen
IRONXL VERWENDEN

Wie exportiert man eine `DataTable` in C# als CSV-Datei?

IronXL ermöglicht die nahtlose Konvertierung DataTable in CSV in C#, ohne dass Microsoft Excel installiert werden muss. Diese eigenständige .NET-Bibliothek bietet eine einfache API zur automatischen Konvertierung DataTables in CSV-Dateien mit benutzerdefinierten Strukturen und Trennzeichen, wodurch der Datenexport für Entwickler unkompliziert wird.

IronXL ist eine beliebte Bibliothek, die es Entwicklern ermöglicht, mit Microsoft Excel-Dokumenten in C# .NET-Technologien zu interagieren, einschließlich CSV-Dateien, ohne dass Microsoft Excel installiert sein muss. Es ermöglicht die automatische Konvertierung registrierter Typen in CSV-Dateien und das Schreiben von CSV-Dateien mit benutzerdefinierten Strukturen.

Welche Funktionen bietet die IronXL-Bibliothek?

Microsoft Excel-Dokumente können mit Hilfe der C# IronXL .NET-Bibliothek gelesen und in CSV-Dateien konvertiert werden. IronXL ist eine eigenständige .NET-Softwarebibliothek, die eine Vielzahl von Tabellenkalkulationsformaten lesen kann. Es hängt nicht von Microsoft.Office.Interop.Excel ab und erfordert keine Installation von Microsoft Excel.

Mithilfe der benutzerfreundlichen C#-API von IronXL können Sie Excel-Tabellenkalkulationsdateien in der .NET-Umgebung schnell lesen, bearbeiten und erstellen . .NET Core, .NET Framework, Xamarin, Mobile, Linux , macOS und Azure werden von IronXL vollständig unterstützt.

  • Führende .NET Core- und .NET Framework-Excel-Tabellenbibliotheken für C# umfassen IronXL.
  • Nahezu alle .NET Frameworks werden unterstützt, einschließlich Konsolenanwendungen, Windows Forms und Webanwendungen.
  • IronXL läuft auf den Betriebssystemen Windows, Linux und macOS.
  • IronXL macht das Lesen von Excel-Dateien einfach und schnell.
  • IronXL unterstützt mehrere Excel-Formate: XLSX, XLS, CSV, TSV, XLST und XLSM.
  • IronXL exportiert Dateien in verschiedene Formate, darunter XLS, CSV, TSV, JSON und XML.
  • IronXL generiert Excel-Berechnungen und unterstützt Formeln.
  • IronXL unterstützt Excel-Spaltendatenformate, einschließlich Text, Zahlen, Datumsangaben, Währungen und Prozentsätze.

Weitere Details finden Sie in der IronXL-Dokumentationsübersicht .

Wie erstelle ich ein neues Projekt in Visual Studio?

In Visual Studio muss ein .NET-Projekt erstellt werden, bevor das IronXL-Framework verwendet werden kann. Jede Edition von Visual Studio funktioniert, aber die neueste Version wird empfohlen. Je nach Bedarf können Sie eine Windows Forms-Anwendung oder verschiedene Projektvorlagen erstellen. Um es einfach zu halten, wird in diesem Tutorial die Konsolenanwendung verwendet.

Der Dialog "Neues Projekt erstellen" von Visual Studio zeigt verschiedene .NET-Projektvorlagen an, darunter die Optionen Konsolenanwendung, ASP.NET Core-Webanwendung und Blazor-Serveranwendung. Erstellen Sie ein neues Projekt in Visual Studio

Danach geben Sie den Namen und den Speicherort des Projekts ein.

! Visual Studio-Projektkonfigurationsdialog, der die Einrichtung für eine neue C#-Konsolenanwendung mit dem Projektnamen 'ConsoleApp1' anzeigt, die auf Windows mit Konsolenausgabe abzielt. Das neue Projekt konfigurieren

Wählen Sie als Nächstes die folgende Struktur aus. In diesem Projekt wird .NET Core 6 verwendet.

! Dialogfeld zur Erstellung eines Visual Studio-Projekts, in dem die Konfiguration einer Konsolenanwendung mit .NET 6.0 (Langzeitunterstützung) als Framework ausgewählt ist. Wählen Sie eine .NET Framework-Version

Die program.cs-Datei wird geöffnet, nachdem die Anwendung die Lösung generiert hat, damit Sie den Programmcode eingeben und die Anwendung erstellen/ausführen können.

! Leeres C#-Konsolenanwendungsfenster in Visual Studio, das das IronXLConsole-Projekt mit anfänglicher Codestruktur zeigt, bereit zur Implementierung der CSV-Exportfunktionalität. Das neu erstellte Konsolenanwendungsprojekt

Anschließend kann die Bibliothek hinzugefügt und zur Bewertung des Codes verwendet werden. Bei anderen Projekttypen wie .NET MAUI-Anwendungen oder VB.NET-Projekten ist der Prozess ähnlich, jedoch sind frameworkspezifische Aspekte zu berücksichtigen.

Wie installiere ich die IronXL-Bibliothek?

Es gibt vier Methoden, um die IronXL-Bibliothek herunterzuladen und zu installieren.

Diese sind:

  • Installation über Visual Studio
  • Installation über die Visual Studio Package Manager-Konsole
  • Direkt von der NuGet-Website herunterladen
  • Direkter Download von der IronXL-Website

Welche Methode sollte ich für die Installation von Visual Studio verwenden?

Mit dem NuGet Package Manager kann das IronXL-Modul installiert werden. Um IronXL zu finden, müssen Sie zunächst den NuGet Package Manager starten und dann im Suchfenster suchen. Installieren Sie IronXL, indem Sie es aus den Suchergebnissen auswählen. Danach kann diese App die IronXL-Bibliothek verwenden.

Das Bild unten zeigt, wie man den NuGet-Paketmanager von Visual Studio startet.

Das Visual Studio-Tools-Menü wurde erweitert und zeigt nun die Optionen NuGet Package Manager und Package Manager Console unter dem Dropdown-Menü Tools an. Zu NuGet Package Manager navigieren

Die Benutzeroberfläche des NuGet-Paketmanagers zeigt das IronXL.Excel-Paket in der Version 2022.3.0 mit 133.000 Downloads und der Schaltfläche "Installieren" zur einfachen Integration. Installiere das IronXL-Paket in der NuGet Package Manager-Oberfläche

Wann sollte ich die Paket-Manager-Konsole verwenden?

Viele Entwickler bevorzugen die Verwendung einer Konsole zur Ausführung von Aufgaben. Eine Terminalinstallation ist daher ebenfalls eine Option. Um IronXL über die Befehlszeile zu installieren, folgen Sie den nachstehenden Anweisungen.

  • Navigieren Sie zu Tools > NuGet Package Manager > Paketmanager-Schnittstelle in Visual Studio.
  • Geben Sie den folgenden Befehl in das Konsolenfenster des Paketmanagers ein:

    Install-Package IronXL.Excel
  • Warten Sie, bis IronXL in das aktive Projekt heruntergeladen und installiert ist.

! Die Paket-Manager-Konsole in Visual Studio zeigt den Befehl 'Install-Package IronXL.Excel' mit Meldungen zur erfolgreichen Installation an. Installiere das IronXL-Paket in der Paketmanager-Konsolenbenutzeroberfläche

Warum sollte ich von der NuGet-Website herunterladen?

Das NuGet-Paket kann als dritte Option direkt von der Website heruntergeladen werden. Diese Methode ist besonders nützlich, wenn Sie in Umgebungen mit eingeschränktem Internetzugang arbeiten oder Pakete manuell verwalten müssen.

  • Navigieren Sie zum offiziellen NuGet-Link .
  • Die Option zum Herunterladen des Pakets finden Sie im Menü auf der rechten Seite.
  • Klicken Sie zweimal auf die gespeicherte Datei. Es wird sofort installiert.
  • Laden Sie die Lösung danach neu und beginnen Sie, sie im Projekt zu verwenden.

Wie installiere ich IronXL direkt von der IronXL-Website?

Um das neueste Paket direkt von der Website herunterzuladen, klicken Sie auf diesen Link, um eine IronXL-ZIP-Datei herunterzuladen. Dieser Link lädt eine ZIP-Datei herunter, die die neueste Version der IronXL-Bibliotheks-DLL enthält. Wenn der Download abgeschlossen ist, extrahieren Sie den Inhalt der ZIP-Datei in ein beliebiges Verzeichnis Ihrer Wahl.

Um die Datei nach dem Herunterladen zum Projekt hinzuzufügen, befolgen Sie die unten aufgeführten Schritte.

  • Klicken Sie im Lösungsfenster mit der rechten Maustaste auf das Projekt.
  • Wählen Sie Verweise aus und navigieren Sie dann zu dem extrahierten Ordner, der die IronXL-DLLs enthält.
  • Wählen Sie die DLL aus und klicken Sie auf OK, um sie als Referenz zum aktiven Projekt hinzuzufügen.

Für verschiedene Bereitstellungsszenarien können Sie IronXL auch in Docker-Containern einrichten oder auf Cloud-Plattformen wie AWS Lambda und Azure Functions bereitstellen.

Wie exportiere ich eine DataTable in eine CSV-Datei?

Mit IronXL lassen sich DataTables einfach und schnell in CSV-Dateien exportieren . Es hilft dabei, Daten in neue CSV-Dateien zu schreiben und dabei benutzerdefinierte Trennzeichen und Kodierungsoptionen zu unterstützen.

Zunächst sollte, wie im folgenden Code-Bild gezeigt, der IronXL-Namespace enthalten sein, um die IronXL-Klassen und -Methoden verwenden zu können.

! C#-Code-Editor, der die Namespace-Deklarationen 'using IronXL;' und 'using System.Data;' mit Syntaxhervorhebung für die DataTable-zu-CSV-Exportimplementierung anzeigt. Fügen Sie allgemeine Namespaces hinzu

Excel-Dateien können mit IronXL erstellt werden, das sie dann in WorkBook-Objekte umwandelt. Anschließend werden verschiedene Operationen an diesen Objekten durchgeführt. Der folgende Beispielcode erstellt eine Excel-Datei, indem eine DataTable in ein Excel-Arbeitsblatt umgewandelt wird.

using IronXL;
using System.Data;

// Entry point of the application
static void Main(string[] args)
{
    // Specify the file path for the CSV file output
    ExportToExcel("H:\\test.csv");
}

// Exports the DataTable to an Excel file and saves it as CSV
public static void ExportToExcel(string filepath)
{
    // Create a DataTable and add columns and rows
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Fruits", typeof(string));
    table.Rows.Add("Apple");
    table.Rows.Add("Orange");
    table.Rows.Add("Strawberry");
    table.Rows.Add("Grapes");
    table.Rows.Add("Watermelon");
    table.Rows.Add("Bananas");
    table.Rows.Add("Lemons");

    // Create a new WorkBook and add the DataTable data to it
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        // Write each item from the DataTable into the worksheet starting from cell A1
        writer["A" + (rowCount)].Value = row[0].ToString();
        rowCount++;
    }
    // Save the workbook as a CSV file with a specified delimiter
    wb.SaveAsCsv(filepath, ";");
}
using IronXL;
using System.Data;

// Entry point of the application
static void Main(string[] args)
{
    // Specify the file path for the CSV file output
    ExportToExcel("H:\\test.csv");
}

// Exports the DataTable to an Excel file and saves it as CSV
public static void ExportToExcel(string filepath)
{
    // Create a DataTable and add columns and rows
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Fruits", typeof(string));
    table.Rows.Add("Apple");
    table.Rows.Add("Orange");
    table.Rows.Add("Strawberry");
    table.Rows.Add("Grapes");
    table.Rows.Add("Watermelon");
    table.Rows.Add("Bananas");
    table.Rows.Add("Lemons");

    // Create a new WorkBook and add the DataTable data to it
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    var writer = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        // Write each item from the DataTable into the worksheet starting from cell A1
        writer["A" + (rowCount)].Value = row[0].ToString();
        rowCount++;
    }
    // Save the workbook as a CSV file with a specified delimiter
    wb.SaveAsCsv(filepath, ";");
}
$vbLabelText   $csharpLabel

Der obige Code exportiert die DataTable in eine Excel-Datei. Spaltenüberschriften werden erstellt, sobald eine DataTable erstellt wird. Dann fügen Sie die Zeilen eine nach der anderen hinzu, nachdem Sie die erste Spalte erstellt haben. Das WorkBook-Objekt wird erstellt, nachdem die Spalten und Zeilen zum DataTable-Objekt hinzugefügt wurden, um diese Daten zu speichern. Das WorkSheet-Objekt wird dann konstruiert, das dem WorkBook-Objekt hinzugefügt wird.

Jeder Wert aus der DataTable wird gelesen und mit einer foreach-Schleife hinzugefügt, bevor der Wert dem WorkSheet hinzugefügt wird. Nachdem alle Werte in das Arbeitsblatt eingefügt wurden, speichert die Methode SaveAsCsv diese in einer CSV-Datei. Sie können sowohl das Trennzeichen als auch den Speicherort der Datei als Parameter angeben.

Für komplexere Szenarien empfiehlt es sich, mehrere DataTables als separate Arbeitsblätter zu exportieren oder mit DataSets zu arbeiten, um die Daten besser zu organisieren.

Arbeiten mit verschiedenen CSV-Formaten

IronXL bietet Flexibilität bei der Arbeit mit CSV-Dateien. Hier ist ein Beispiel, das zeigt, wie man eine DataTable mit benutzerdefinierter Formatierung und Kodierung exportiert:

// Export with custom delimiter and encoding
public static void ExportToCSVWithOptions(DataTable dataTable, string filepath)
{
    // Create workbook from DataTable
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet ws = wb.CreateWorkSheet("DataExport");

    // Add headers
    for (int i = 0; i < dataTable.Columns.Count; i++)
    {
        ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName;
    }

    // Add data rows
    for (int row = 0; row < dataTable.Rows.Count; row++)
    {
        for (int col = 0; col < dataTable.Columns.Count; col++)
        {
            ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col];
        }
    }

    // Save with custom delimiter (comma) and UTF-8 encoding
    wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8);
}
// Export with custom delimiter and encoding
public static void ExportToCSVWithOptions(DataTable dataTable, string filepath)
{
    // Create workbook from DataTable
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLSX);
    WorkSheet ws = wb.CreateWorkSheet("DataExport");

    // Add headers
    for (int i = 0; i < dataTable.Columns.Count; i++)
    {
        ws[$"{(char)('A' + i)}1"].Value = dataTable.Columns[i].ColumnName;
    }

    // Add data rows
    for (int row = 0; row < dataTable.Rows.Count; row++)
    {
        for (int col = 0; col < dataTable.Columns.Count; col++)
        {
            ws[$"{(char)('A' + col)}{row + 2}"].Value = dataTable.Rows[row][col];
        }
    }

    // Save with custom delimiter (comma) and UTF-8 encoding
    wb.SaveAsCsv(filepath, ",", System.Text.Encoding.UTF8);
}
$vbLabelText   $csharpLabel

Dieser Ansatz gibt Ihnen mehr Kontrolle über den Exportprozess, da Sie Zelldatenformate festlegen und die Ausgabestruktur anpassen können.

! Excel-Tabelle mit einer Liste von Früchten (Apfel, Orange, Erdbeere, Trauben, Wassermelone, Bananen, Zitronen) in Spalte A mit korrekter CSV-Formatierung und ohne zusätzliche Trennzeichen. Die ausgegebene CSV-Datei

Die Ausgabe des ausgeführten Codesamples ist oben gezeigt. Im Screenshot wurde jedes Datenstück aus der Datentabelle einzeln zum neu erstellten Excel-Blatt hinzugefügt. Sie können Zellen auch vor dem Export formatieren oder Formeln für berechnete Werte hinzufügen .

Für komplexere CSV-Operationen können Sie:

Um mehr über das IronXL-Tutorial zu erfahren, klicken Sie auf dieses How-to für den Export in Excel-Formate.

Warum sollte ich IronXL für den CSV-Export verwenden?

Eines der beliebtesten Excel-Tools ist IronXL. Es hängt nicht von anderen Bibliotheken aus externen Quellen ab. Es ist autonom und erfordert keine Installation von Microsoft Excel. Es funktioniert über zahlreiche Kanäle hinweg.

IronXL bietet eine All-in-One-Lösung für alle Aufgaben im Zusammenhang mit Microsoft Excel-Dokumenten, die programmgesteuert implementiert werden sollen. Sie können Formelberechnungen durchführen, Zeichenketten oder Zahlen sortieren , kürzen und anhängen , suchen und ersetzen, zusammenführen und die Zusammenführung aufheben , Dateien speichern usw. Außerdem können Sie Zelldatenformate festlegen und Tabellendaten überprüfen. Es unterstützt auch das Lesen und Schreiben von CSV-Dateien und hilft Ihnen, wie mit Excel-Daten zu arbeiten.

Zu den weiteren Vorteilen gehören:

Der Einstiegspreis von IronXL zum Zeitpunkt der Markteinführung beträgt $799. Es bietet den Benutzern auch die Möglichkeit, eine Jahresabonnementgebühr für Produkthilfe und Updates zu zahlen. Für eine zusätzliche Gebühr bietet IronXL Sicherheit für die uneingeschränkte Weiterverbreitung. Für näherungsweise Preisdetails besuchen Sie bitte diese Lizenzierungsseite.

Häufig gestellte Fragen

Wie kann ich eine DataTable in eine CSV-Datei in C# exportieren?

Sie können IronXL verwenden, um eine DataTable in eine CSV-Datei zu exportieren, indem Sie ein WorkBook erstellen und die Daten in Tabellenblattobjekte exportieren. Dies ermöglicht eine nahtlose Konvertierung und Export, ohne dass Microsoft Excel erforderlich ist.

Welche Dateiformate kann ich mit dieser Bibliothek exportieren?

IronXL ermöglicht den Export von Daten in verschiedene Formate wie XLS, CSV, TSV und JSON und bietet Flexibilität beim Umgang mit unterschiedlichen Datenanforderungen.

Ist es möglich, Excel-ähnliche Operationen mit dieser Bibliothek durchzuführen?

Ja, IronXL ermöglicht Excel-ähnliche Operationen wie Formelberechnungen, Datensortierung und Dateispeicherung und ist damit ein umfassendes Tool für Excel-bezogene Programmieraufgaben.

Muss ich Microsoft Excel installieren, um diese Bibliothek zu verwenden?

Nein, IronXL ist eine eigenständige .NET-Bibliothek, die keine Installation von Microsoft Excel erfordert und Entwicklern ermöglicht, mit Excel-Dokumenten direkt innerhalb ihrer C#-Anwendungen zu arbeiten.

Welche Plattformen sind mit dieser Bibliothek kompatibel?

IronXL ist mit mehreren Plattformen kompatibel, darunter .NET Core, .NET Framework, Xamarin sowie Betriebssysteme wie Windows, Linux und macOS.

Wie kann ich die IronXL-Bibliothek in meinem Projekt installieren?

IronXL kann in einem .NET-Projekt über Visual Studio installiert werden, indem auf den NuGet-Paket-Manager zugegriffen oder direkt von der NuGet- oder IronXL-Website heruntergeladen wird.

Welche Preisoptionen gibt es für diese Bibliothek?

IronXL bietet einen Einstiegspreis mit Optionen für ein einjähriges Abonnement, das Produktunterstützung und Updates umfasst, für fortlaufenden Support und Zugang zu den neuesten Funktionen.

Jordi Bardia
Software Ingenieur
Jordi ist am besten in Python, C# und C++ versiert. Wenn er nicht bei Iron Software seine Fähigkeiten einsetzt, programmiert er Spiele. Mit Verantwortung für Produkttests, Produktentwicklung und -forschung trägt Jordi mit immensem Wert zur kontinuierlichen Produktverbesserung bei. Die abwechslungsreiche Erfahrung hält ihn gefordert und engagiert, ...
Weiterlesen