Zum Fußzeileninhalt springen
IRONXL VERWENDEN

Wie man Daten in eine CSV-Datei in C# schreibt

Dieser Artikel untersucht, wie man mit IronXL eine CSV-Datei schreibt.

IronXL-Bibliothek

IronXL ist eine .NET Excel Bibliothek, die umfassende Funktionen zum Erstellen, Lesen und Bearbeiten von Tabellenkalkulationsdateien in C# Anwendungen bietet. Es übertrifft in Bezug auf Leistung und Ausgabepräzision. Es unterstützt verschiedene Tabellenarbeitsmappe-Dateiformate wie XLS, XLSX, XLSM, CSV und TSV. Zusätzlich ermöglicht es Ihnen, Daten zu speichern oder zu exportieren von Excel-Dateien in Formate wie CSV, JSON, HTML, Binär, Byte-Array, DataSet oder DataTable.

Mit IronXL können Entwickler nahtlos mit Arbeitsblättern und Zellbereichen arbeiten und bieten einen eleganten Ansatz zur Datenmanipulation. Es ermöglicht einfache Bearbeitung von Formeln und erleichtert die Neuberechnung von Formeln innerhalb eines Blattes. Sortieren von Daten basierend auf Bereich, Spalte oder Zeile ist unkompliziert. You can also modify layouts by freezing panes, auto-sizing rows/columns, and adding/removing rows/columns.

IronXL bietet die Möglichkeit, Excel-Dateien mit Benutzerpasswörtern zu schützen und Bearbeitungsberechtigungen festzulegen. Darüber hinaus bietet es Funktionen zum Hinzufügen, Entfernen und Extrahieren von Bildern aus Excel-Arbeitsblättern. Die Bibliothek umfasst eine breite Palette von Excel-Funktionen, die verschiedene Zellen-Datenformate unterstützen. Das macht IronXL zu einer der intuitivsten APIs für die Arbeit mit Excel-Dateien.

Ein bemerkenswerter Vorteil von IronXL ist, dass es keine Microsoft Excel oder Office Interop-Abhängigkeiten erfordert, die auf dem Rechner installiert sein müssen. Es ist eine eigenständige Lösung, die plattformübergreifend funktioniert und mit .NET-Versionen 7, 6 und 5 kompatibel ist. Es unterstützt auch .NET Core 2 und 3 sowie die Standard-2-Version. Für die Arbeit mit Excel-Tabellen ist IronXL mit .NET Framework 4.5 und späteren Versionen kompatibel.

Erstellen Sie eine Konsolenanwendung

Die neueste Version von Visual Studio wird empfohlen, um eine Anwendung zu erstellen, um zu beginnen. Visual Studio ist die offizielle IDE für die C#-Entwicklung und muss installiert sein. Sie können es von der Microsoft Visual Studio Website herunterladen, falls noch nicht installiert.

Die folgenden Schritte werden ein neues Projekt namens "DemoApp" erstellen.

  1. Öffnen Sie Visual Studio und klicken Sie auf "Create a New Project".

    Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 1: Öffnen Sie Visual Studio Visual Studio öffnen

  2. Wählen Sie Konsolenanwendung und klicken Sie auf "Weiter".

    Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 2: Erstellen Sie ein neues Projekt in Visual Studio Ein neues Projekt in Visual Studio erstellen

  3. Legen Sie den Namen des Projekts fest

    Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 3: Konfigurieren Sie Ihr neues Projekt Ihr neues Projekt konfigurieren

  4. Wählen Sie die .NET-Version. Wählen Sie die stabile Version .NET 6.0.

    Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 4: .NET Framework Auswahl .NET Framework-Auswahl

IronXL-Bibliothek installieren

Sobald das Projekt erstellt ist, muss die IronXL-Bibliothek installiert werden, um sie im Projekt zu nutzen. Folgen Sie diesen Schritten, um sie zu installieren.

  1. Öffnen Sie den NuGet-Paketmanager entweder vom Projektmappen-Explorer oder von den Tools.

    Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 5: Zum NuGet-Paketmanager navigieren Zum NuGet-Paket-Manager navigieren

  2. Suchen Sie die IronXL-Bibliothek und wählen Sie das aktuelle Projekt. Klicken Sie auf Install.

    Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 6: Suchen und installieren Sie das IronXL-Paket in der NuGet-Paketmanager-Oberfläche Suchen und installieren Sie das IronXL-Paket im NuGet-Paket-Manager-UI

Fügen Sie den folgenden Namespace am Anfang der Datei Program.cs hinzu:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

Erstellen Sie ein neues Arbeitsbuch in C#

IronXL bietet die Möglichkeit, eine leere Arbeitsmappe zu erstellen. Ein Arbeitsbuch ist eine Kalkulationstabelle, die mehrere Arbeitsblätter enthält. Die Daten werden in Zellen gespeichert. CSV sieht auch aus wie eine Tabelle, jedoch mit einer CSV-Dateierweiterung.

// Creates a new instance of WorkBook Spreadsheet
WorkBook workBook = WorkBook.Create();
// Creates a new instance of WorkBook Spreadsheet
WorkBook workBook = WorkBook.Create();
' Creates a new instance of WorkBook Spreadsheet
Dim workBook As WorkBook = WorkBook.Create()
$vbLabelText   $csharpLabel

Nun, lassen Sie uns ein Blatt in der WorkBook erstellen. Es gibt mehrere Möglichkeiten, ein Arbeitsblatt in der Arbeitsmappe zu erstellen.

// Adds a default sheet to the workbook
WorkSheet defaultSheet = workBook.DefaultWorkSheet;

// Creates a worksheet with the name "Sheet1"
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
// Adds a default sheet to the workbook
WorkSheet defaultSheet = workBook.DefaultWorkSheet;

// Creates a worksheet with the name "Sheet1"
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
' Adds a default sheet to the workbook
Dim defaultSheet As WorkSheet = workBook.DefaultWorkSheet

' Creates a worksheet with the name "Sheet1"
Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
$vbLabelText   $csharpLabel

Wenn Sie weitere Blätter zu Ihrer bestehenden Arbeitsmappe hinzufügen möchten, verwenden Sie die Methode CreateWorkSheet.

Hinweis: Sie können die Methode WorkBook.LoadCSV verwenden, wenn die CSV-Datei bereits existiert. Sie können diese Codebeispielseite ansehen, um eine bestehende CSV-Datei zu laden.

Daten in das WorkSheet schreiben

CSV-Dateien zu schreiben ist einfach mit IronXL. Es bietet Excel-Funktionen, um Daten in CSVs zu schreiben. Zellenreferenzen können verwendet werden, um die Werte an angegebenen Orten hinzuzufügen. Hier werde ich über einen foreach Schleife einige Datensätze von Mitarbeitern hinzufügen.

// Initialize an array of employee names
string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

// Starting row for data entry
int i = 2;

// Setting header titles for the columns
sheet["A1"].Value = "ID";
sheet["B1"].Value = "Name";
sheet["C1"].Value = "Salary";

// Populate each row with employee data
foreach (var employee in employeeNames)
{
    // Set values for ID, Name, and Salary
    sheet["A" + i].Value = i;
    sheet["B" + i].Value = employee;
    sheet["C" + i].Value = i * 1000;
    i++;
}
// Initialize an array of employee names
string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

// Starting row for data entry
int i = 2;

// Setting header titles for the columns
sheet["A1"].Value = "ID";
sheet["B1"].Value = "Name";
sheet["C1"].Value = "Salary";

// Populate each row with employee data
foreach (var employee in employeeNames)
{
    // Set values for ID, Name, and Salary
    sheet["A" + i].Value = i;
    sheet["B" + i].Value = employee;
    sheet["C" + i].Value = i * 1000;
    i++;
}
' Initialize an array of employee names
Dim employeeNames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }

' Starting row for data entry
Dim i As Integer = 2

' Setting header titles for the columns
sheet("A1").Value = "ID"
sheet("B1").Value = "Name"
sheet("C1").Value = "Salary"

' Populate each row with employee data
For Each employee In employeeNames
	' Set values for ID, Name, and Salary
	sheet("A" & i).Value = i
	sheet("B" & i).Value = employee
	sheet("C" & i).Value = i * 1000
	i += 1
Next employee
$vbLabelText   $csharpLabel

Im obigen Codebeispiel wird ein Array von employeeNames erstellt, und die erste Zeile wird mit den Überschriften: ID, Name, Gehalt gesetzt. Eine Variable i wird auch mit dem Wert 2 initialisiert, wodurch die Datensätze ab der 2. Zeile unter den Überschriften eingegeben werden. Die foreach Schleife verarbeitet jeden Mitarbeiter aus der Liste und fügt sie zur aktuellen Zeile mit ID- und Gehaltswerten hinzu. Bevor die Schleife abgeschlossen wird, wird i inkrementiert, um zur nächsten Zeile für den nächsten Datensatz zu wechseln.

Speichern der Daten in einer CSV-Datei

Der letzte Schritt ist das Speichern der CSV-Datei. IronXL bietet die Methode SaveAsCsv, um die Arbeitsmappe als CSV-Datei zu speichern. Der erste Parameter dieser Methode ist der CSV-Dateiname und der zweite ist das Trennzeichen.

// Save the modified workbook as a CSV file with a specified delimiter
workBook.SaveAsCsv("sample.csv", ",");
// Save the modified workbook as a CSV file with a specified delimiter
workBook.SaveAsCsv("sample.csv", ",");
' Save the modified workbook as a CSV file with a specified delimiter
workBook.SaveAsCsv("sample.csv", ",")
$vbLabelText   $csharpLabel

Der vollständige Code lautet wie folgt:

using System;
using IronXL;

class Program
{
    static void Main()
    {
        // Create a new workbook and worksheet
        WorkBook workBook = WorkBook.Create();
        WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

        // Initialize an array of employee names
        string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

        // Starting row for data entry
        int i = 2;

        // Setting header titles for the columns
        sheet["A1"].Value = "ID";
        sheet["B1"].Value = "Name";
        sheet["C1"].Value = "Salary";

        // Populate each row with employee data
        foreach (var employee in employeeNames)
        {
            // Set values for ID, Name, and Salary
            sheet["A" + i].Value = i;
            sheet["B" + i].Value = employee;
            sheet["C" + i].Value = i * 1000;
            i++;
        }

        // Save the modified workbook as a CSV file with a specified delimiter
        workBook.SaveAsCsv("sample.csv", ",");
    }
}
using System;
using IronXL;

class Program
{
    static void Main()
    {
        // Create a new workbook and worksheet
        WorkBook workBook = WorkBook.Create();
        WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

        // Initialize an array of employee names
        string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

        // Starting row for data entry
        int i = 2;

        // Setting header titles for the columns
        sheet["A1"].Value = "ID";
        sheet["B1"].Value = "Name";
        sheet["C1"].Value = "Salary";

        // Populate each row with employee data
        foreach (var employee in employeeNames)
        {
            // Set values for ID, Name, and Salary
            sheet["A" + i].Value = i;
            sheet["B" + i].Value = employee;
            sheet["C" + i].Value = i * 1000;
            i++;
        }

        // Save the modified workbook as a CSV file with a specified delimiter
        workBook.SaveAsCsv("sample.csv", ",");
    }
}
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Create a new workbook and worksheet
		Dim workBook As WorkBook = WorkBook.Create()
		Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")

		' Initialize an array of employee names
		Dim employeeNames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }

		' Starting row for data entry
		Dim i As Integer = 2

		' Setting header titles for the columns
		sheet("A1").Value = "ID"
		sheet("B1").Value = "Name"
		sheet("C1").Value = "Salary"

		' Populate each row with employee data
		For Each employee In employeeNames
			' Set values for ID, Name, and Salary
			sheet("A" & i).Value = i
			sheet("B" & i).Value = employee
			sheet("C" & i).Value = i * 1000
			i += 1
		Next employee

		' Save the modified workbook as a CSV file with a specified delimiter
		workBook.SaveAsCsv("sample.csv", ",")
	End Sub
End Class
$vbLabelText   $csharpLabel

Ausgabe

Wie man Daten in einer CSV-Datei in C# schreibt, Abbildung 7: Die ausgegebene CSV-Datei Die ausgegebene CSV-Datei

Zusammenfassung

Dieser Artikel präsentiert einen einfachen Ansatz zum Schreiben einer CSV-Datei mit IronXL in C#. IronXL bietet auch die Möglichkeit, mit bestehenden CSV-Dateien ohne Umstände zu arbeiten. Es ermöglicht Ihnen auch, CSV-Dateien zu schreiben, neue Excel-Dateien zu erstellen und Daten mit einfacher Syntax zu schreiben. IronXL kann auch verwendet werden, um Excel-Dateien zu lesen und zu schreiben ohne Microsoft Office installiert zu haben. Für die Umwandlung zwischen verschiedenen Tabellenformaten können Sie diese Codebeispielseite sehen.

IronXL ist kostenlos für die Entwicklung und kann für den kommerziellen Gebrauch lizenziert werden. Sie können auch die IronXL kostenfreie Testlizenz für kommerzielle Zwecke ausprobieren.

Häufig gestellte Fragen

Wie kann ich Daten in eine CSV-Datei in C# schreiben?

Sie können die `SaveAsCsv`-Methode von IronXL verwenden, um Daten in eine CSV-Datei in C# zu exportieren. Erstellen Sie zuerst eine Arbeitsmappe und ein Arbeitsblatt, schreiben Sie Daten in die Zellen und verwenden Sie dann `workBook.SaveAsCsv("filename.csv", ",");`, um die Daten als CSV-Datei zu speichern.

Was sind die Schritte, um eine Konsolenanwendung zum Schreiben von CSV-Dateien in C# zu erstellen?

Um eine Konsolenanwendung zum Schreiben von CSV-Dateien zu erstellen, richten Sie ein neues Projekt in Visual Studio ein, wählen Sie die entsprechende .NET-Version aus und installieren Sie IronXL über den NuGet-Paketmanager. Verwenden Sie dann IronXL, um eine Arbeitsmappe zu erstellen, Daten zu einem Arbeitsblatt hinzuzufügen und es als CSV zu speichern.

Kann ich Daten in eine CSV-Datei schreiben, ohne Microsoft Excel zu verwenden?

Ja, Sie können Daten in eine CSV-Datei schreiben, ohne Microsoft Excel zu verwenden, indem Sie IronXL nutzen. Es ermöglicht die Manipulation von Excel- und CSV-Dateien programmatisch, ohne dass Excel installiert sein muss.

Wie installiere ich IronXL in einem Visual Studio-Projekt?

Sie können IronXL installieren, indem Sie den NuGet-Paketmanager in Visual Studio öffnen, nach 'IronXL' suchen und auf 'Installieren' klicken, um es Ihrem Projekt hinzuzufügen. Dadurch können Sie die Funktionen von IronXL für die Handhabung von Excel- und CSV-Dateien verwenden.

Welche Dateiformate unterstützt IronXL für den Export?

IronXL unterstützt den Export von Daten in mehrere Formate, darunter CSV, JSON, HTML, Binär, Byte-Array, DataSet und DataTable, was es vielseitig für verschiedene Datenverarbeitungsbedürfnisse macht.

Ist IronXL mit verschiedenen .NET-Versionen kompatibel?

Ja, IronXL ist mit mehreren .NET-Versionen kompatibel, einschließlich .NET Core 2 und 3 sowie .NET 5, 6 und 7, was Entwicklern Flexibilität in verschiedenen Entwicklungsumgebungen bietet.

Kann ich IronXL für kommerzielle Projekte verwenden?

Ja, IronXL kann für kommerzielle Zwecke lizenziert werden. Es bietet auch eine kostenlose Testversion für Entwicklungszwecke, damit Entwickler seine Funktionen testen können, bevor sie sich für eine kommerzielle Lizenz entscheiden.

Wie erstelle ich eine neue Arbeitsmappe und ein neues Arbeitsblatt in C# mit IronXL?

Sie können eine neue Arbeitsmappe und ein neues Arbeitsblatt erstellen, indem Sie `WorkBook.Create()` verwenden, um ein Arbeitsmappenobjekt zu initialisieren und dann ein neues Arbeitsblatt hinzuzufügen. Dadurch können Sie beginnen, Daten in das Arbeitsblatt zu schreiben.

Benötigt IronXL Abhängigkeiten von Office Interop?

Nein, IronXL ist eine eigenständige Bibliothek, die keine Abhängigkeiten von Office Interop benötigt, was die Nutzung und Bereitstellung in Anwendungen auf verschiedenen Plattformen erleichtert.

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