IRONXL VERWENDEN

C# CSV Parser (Schritt-für-Schritt) Tutorial

Aktualisiert 29. Januar 2024
Teilen Sie:

Haben Sie schon einmal versucht, CSV-Dateien zu analysieren und sie in XLSX- oder XLSX-Dateien in CSV-Dateien zu konvertieren, um eine wichtige Aufgabe in .NET zu erledigen, konnten aber nicht herausfinden, wie Sie das tun können, ohne tonnenweise Code zu schreiben?

Es gibt viele CSV-Bibliotheken, die dieses Problem lösen. Allerdings ist dieIronXL C# Excel Library wird in diesem Blog verwendet werden, um diese Aufgaben mit nur zwei Zeilen Code durchzuführen.

Für die ersten Schritte benötigen Sie lediglich Visual Studio, und folgen Sie den detaillierten Installationsanweisungen unten.

1. Erstellen eines neuen Projekts in Visual Studio

Öffnen Sie den Visual Studio-Editor.

Rufen Sie das Menü Datei in Visual Studio auf. Wählen Sie "Neues Projekt" und dann "Konsolenanwendung".

Geben Sie den Projektnamen ein und wählen Sie den Projektstandort. Klicken Sie dann auf die Schaltfläche Erstellen, um das Projekt zu erstellen. Wählen Sie das gewünschte .NET-Framework aus, wie in der folgenden Abbildung dargestellt:

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 1: Erstellen einer neuen C#. NET-Konsolenanwendung

Erstellen Sie eine neue C#. NET-Konsolenanwendung

Die Datei "program.cs" wird geöffnet, damit Sie die Logik eingeben und die Anwendung erstellen/ausführen können.

2. Installieren Sie die IronXL C# Bibliothek

Die IronXL-Bibliothek kann auf viele verschiedene Arten heruntergeladen und installiert werden. Heute werden wir uns auf zwei dieser Themen konzentrieren:

  • Verwendung des Visual Studio NuGet-Paketmanagers
  • Verwendung der Visual Studio-Befehlszeile

2.1. Verwendung des Visual Studio NuGet-Paketmanagers

Die NuGet Package Manager UI ist in Visual Studio verfügbar, um das Paket direkt in das Projekt zu installieren. Der folgende Screenshot zeigt, wie man sie öffnet.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 2: Installation von IronXL mit der Visual Studio NuGet Package Manager GUI

Installation von IronXL mit der Visual Studio NuGet Package Manager GUI

Die Benutzeroberfläche des Paketmanagers bietet eine Suchfunktion, die eine Liste der Paketbibliotheken anzeigt, die auf der NuGet-Website angeboten werden. Geben Sie das Schlüsselwort "IronXL" ein (siehe Abbildung unten), um das IronXL-Paket zu finden.

C# CSV-Parser (Schritt-für-Schritt-Tutorial), Abbildung 3: Suchen Sie die IronXL-Bibliothek im NuGet Package Manager, indem Sie im Abschnitt Browse danach suchen

Suchen Sie die IronXL-Bibliothek im NuGet-Paketmanager, indem Sie im Abschnitt Durchsuchen nach ihr suchen

Wählen Sie das Paket "IronXL.Excel" aus und klicken Sie auf die Schaltfläche Installieren, um es dem Projekt hinzuzufügen.

2.2. Verwendung der Visual Studio-Befehlszeile

Gehen Sie im Menü von Visual Studio zu Tools > NuGet Package Manager > klicken Sie auf Package Manager Console.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 4: Zugriff auf die NuGet Package Manager Konsole in Visual Studio über das Menü Tools

Zugriff auf die NuGet Package Manager-Konsole in Visual Studio über das Menü Tools

Die Paketmanager-Konsole wird am unteren Rand des Bildschirms angezeigt. Geben Sie einfach den folgenden Befehl ein und drücken Sie die Eingabetaste. IronXL wird dann installiert.

Install-Package IronXL.Excel

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 5: Installieren Sie die IronXL Bibliothek über die Befehlszeile

Installation der IronXL-Bibliothek über die Befehlszeile

3. Parsen von CSV-Dateien

Das manuelle Parsen von CSV-Dateien erfordert eine Menge präzisen Code, um die Aufgabe zu erledigen, aber mit IronXL sind dafür nur ein paar Zeilen Code erforderlich.

Wenn Sie nur herkömmlichen C#-Code zum Parsen von CSV-formatierten Dateien verwenden, müssen Sie eine Menge sperrigen Code verwenden. Hier ist ein Beispiel für einen entsprechenden Code.

using FileHelpers;
using System;
namespace parse_csv
{
    [DelimitedRecord(",")]
    public class Record
    {
        public string Name;

        public string Age;
    }
    class Program
    {
        static void Main(string [] args)
        {
            var fileHelperEngine = new FileHelperEngine<Record>();
            var records = fileHelperEngine.ReadFile(@"C:\File\records.csv");

            foreach (var record in records)
            {
                Console.WriteLine(record.Name);
                Console.WriteLine(record.Age);
            }
        }
    }
}
using FileHelpers;
using System;
namespace parse_csv
{
    [DelimitedRecord(",")]
    public class Record
    {
        public string Name;

        public string Age;
    }
    class Program
    {
        static void Main(string [] args)
        {
            var fileHelperEngine = new FileHelperEngine<Record>();
            var records = fileHelperEngine.ReadFile(@"C:\File\records.csv");

            foreach (var record in records)
            {
                Console.WriteLine(record.Name);
                Console.WriteLine(record.Age);
            }
        }
    }
}
Imports FileHelpers
Imports System
Namespace parse_csv
	<DelimitedRecord(",")>
	Public Class Record
		Public Name As String

		Public Age As String
	End Class
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Dim fileHelperEngine As New FileHelperEngine(Of Record)()
			Dim records = fileHelperEngine.ReadFile("C:\File\records.csv")

			For Each record In records
				Console.WriteLine(record.Name)
				Console.WriteLine(record.Age)
			Next record
		End Sub
	End Class
End Namespace
VB   C#

Mit IronXL lässt sich dies jedoch mit wenigen Zeilen Code erreichen.

Mit IronXL können Sie CSV-Dateien aus XLSX, XLS, TSV und anderen Formaten parsen. In diesem Tutorial werden wir uns mit den folgenden Konvertierungen beschäftigen:

  1. CSV-Datei aus XLSX-Datei auslesen

  2. CSV-Datei aus XLS-Datei parsen

  3. CSV-Datei aus TSV-Datei auslesen

3.1. Parsen einer CSV-Datei aus einer XLSX-Datei

Öffnen Sie Microsoft Excel und erstellen Sie eine neue XLSX-Datei. Füllen Sie die Zeilen und Spalten mit einigen Scheindaten. Das folgende Bild zeigt die Datei, die für alle Konvertierungen in diesem Tutorial verwendet wird.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 6: Beispiel Excel-Daten

Beispiel Excel-Daten

Sobald Sie Ihre Datei fertig haben, schreiben Sie den folgenden Beispielcode und führen das Programm aus.

using IronXL;

WorkBook wb = WorkBook.Load("test.xlsx");
wb.SaveAsCsv("Parsed CSV.csv");
using IronXL;

WorkBook wb = WorkBook.Load("test.xlsx");
wb.SaveAsCsv("Parsed CSV.csv");
Imports IronXL

Private wb As WorkBook = WorkBook.Load("test.xlsx")
wb.SaveAsCsv("Parsed CSV.csv")
VB   C#

Nach Abschluss der Ausführung wird eine neue Datei mit dem Namen Parsed CSV.csv erstellt. Das Lesen von CSV-Dateien kann in jedem beliebigen Editor oder Leseprogramm erfolgen. Das folgende Bild zeigt die Ausgabe des obigen Befehls - unsere generierten CSV-Daten. In der Ausgabedatei stehen doppelte Anführungszeichen für fette Werte.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 7: Das Ergebnis des Aufrufs der Methode WorkBook.SaveAsCsv für die Excel-Arbeitsmappe

Das Ergebnis des Aufrufs der Methode WorkBook.SaveAsCsv für die Excel-Musterarbeitsmappe

3.2. CSV-Datei aus XLS-Datei parsen

In diesem Beispiel wird gezeigt, wie XLS-Dateien in das CSV-Format konvertiert werden können.

Lassen Sie uns zunächst eine XLS-Beispieldatei erstellen, die wir in das CSV-Format konvertieren können.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 8: Eine Beispiel-XLS-Datei

Eine XLS-Beispieldatei

Als Nächstes führen wir den folgenden Codeblock aus, um die XLS-Beispieldatei in eine CSV-Datei zu konvertieren.

using IronXL;

WorkBook wb = WorkBook.Load("XLS.xls");
wb.SaveAsCsv("Example2.csv");
using IronXL;

WorkBook wb = WorkBook.Load("XLS.xls");
wb.SaveAsCsv("Example2.csv");
Imports IronXL

Private wb As WorkBook = WorkBook.Load("XLS.xls")
wb.SaveAsCsv("Example2.csv")
VB   C#

Nach der Ausführung des obigen Codes erhalten Sie eine neu generierte CSV-Datei.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 9: Das Ergebnis der CSV-Datei beim Speichern mit dem obigen Code

Die CSV-Datei, die mit dem obigen Code gespeichert wurde

3.3. CSV-Datei aus TSV-Datei parsen

In Tabellenkalkulationsanwendungen werden häufig TSV-Dateien (Tab-Separated Values) verwendet, um Daten zwischen Datenbanken zu übertragen. Es speichert eine Datentabelle, bei der die Datenspalten durch Tabulatoren getrennt sind und jeder Datensatz in einer anderen Zeile steht.

IronXL bietet einen CSV-Parser zum Parsen von CSV-Dateien aus dem TSV-Format für eine bessere Datenverwaltung.

Lassen Sie uns mit dem Beispiel beginnen.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 10: Ein Beispiel-TSV-Tabellenblatt

Ein Beispiel für ein TSV-Tabellenblatt

using IronXL;

WorkBook wb = WorkBook.Load("TSV.tsv");
wb.SaveAsCsv("Example3.csv");
using IronXL;

WorkBook wb = WorkBook.Load("TSV.tsv");
wb.SaveAsCsv("Example3.csv");
Imports IronXL

Private wb As WorkBook = WorkBook.Load("TSV.tsv")
wb.SaveAsCsv("Example3.csv")
VB   C#

Nachfolgend finden Sie die Ausgabe im CSV-Format.

C# CSV-Parser(Schritt-für-Schritt) Tutorial, Abbildung 11: Die ausgegebene CSV-Datei

Die ausgegebene CSV-Datei

4. Schlussfolgerung

Dieses Tutorial verwendet IronXL, um verschiedene Dateiformate in C# in CSV zu parsen.

Darüber hinaus bietet die IronXL-Bibliothek auch die folgenden Funktionen:

< PREVIOUS
Erstellen einer CSV-Datei in C# (Schritt-für-Schritt) Tutorial
NÄCHSTES >
Wie man in Blazor mit IronXL Daten nach Excel exportiert

Sind Sie bereit, loszulegen? Version: 2024.11 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 1,094,134 Lizenzen anzeigen >