Zum Fußzeileninhalt springen
IRONXL VERWENDEN

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

Haben Sie jemals versucht, CSV-Dateien zu parsen und sie für eine wichtige Aufgabe in .NET in XLSX oder von XLSX in CSV-Dateien zu konvertieren, konnten aber nicht herausfinden, wie Sie dies tun können, ohne tonnenweise Code zu schreiben?

Viele CSV-Bibliotheken existieren, um dieses Problem zu lösen. Jedoch wird die IronXL C# Excel-Bibliothek in diesem Blog verwendet, um diese Aufgaben mit nur zwei Codezeilen auszuführen.

Um zu beginnen, benötigen Sie nur Visual Studio und folgen Sie den unten aufgeführten detaillierten Installationsanweisungen.

1. Erstellen eines neuen Projekts in Visual Studio

Öffnen Sie den Visual Studio-Editor.

Gehen Sie zum Datei-Menü in Visual Studio. 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 erforderliche .NET Framework aus, wie im folgenden Screenshot gezeigt:

![C# CSV Parser (Schritt-für-Schritt) Tutorial, Abbildung 1: Erstellen Sie eine neue C#. Die Datei program.cs wird geöffnet, sodass Sie die Logik eingeben und die Anwendung erstellen/ausführen können. Die IronXL-Bibliothek kann auf verschiedene Arten installiert werden.

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

2. Installation der IronXL C#-Bibliothek

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

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

2.1. Verwenden des Visual Studio NuGet-Paket-Managers

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 es öffnet.

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

Die Benutzeroberfläche des Paketmanagers bietet eine Durchsuchen-Funktion, die eine Liste der Paketbibliotheken anzeigt, die auf der NuGet-Website angeboten werden. Geben Sie das Schlüsselwort "IronXL" ein, wie im folgenden Screenshot, um das IronXL-Paket zu finden.

Gehen Sie im Visual Studio-Menü zu Extras > NuGet-Paket-Manager > klicken Sie auf Paket-Manager-Konsole.

![C# CSV Parser (Schritt-für-Schritt) Tutorial, Abbildung 4: NuGet-Paket-Manager-Konsole in Visual Studio über das Extras-Menü aufrufen](<a href="/static-assets/excel/blog/csharp-csv-parser-tutorial/csharp-csv-parser-tutorial-4.webp") NuGet-Paket-Manager-Konsole in Visual Studio aufrufen

2.2. Verwenden der Visual Studio-Kommandozeile

Gehen Sie im Visual Studio-Menü zu Extras > NuGet-Paket-Manager > klicken Sie auf Paket-Manager-Konsole.

C# CSV-Parser (Schritt-für-Schritt) Tutorial, Abbildung 4: Zugriff auf die NuGet-Paket-Manager-Konsole innerhalb von Visual Studio aus dem Menü Extras Zugriff auf die NuGet-Paket-Manager-Konsole innerhalb von Visual Studio aus dem Menü Extras

Die Paket-Manager-Konsole wird am unteren Bildschirmrand angezeigt. ## 3. CSV-Dateien analysieren

Install-Package IronXL.Excel

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

3. Parsen von CSV-Dateien

Hier ist ein Beispiel für Code, um dies zu erreichen.

Wenn Sie nur herkömmlichen C#-Code verwenden, um CSV-formatierte Dateien zu parsen, müssen Sie viel umfangreichen Code verwenden. Hier ist ein Beispiel für Code, um dies zu erreichen.

using FileHelpers;
using System;

namespace parse_csv
{
    [DelimitedRecord(",")]
    public class Record
    {
        public string Name;
        public string Age;
    }

    class Program
    {
        static void Main(string[] args)
        {
            // Create a FileHelperEngine for the Record class
            var fileHelperEngine = new FileHelperEngine<Record>();
            // Read records from the CSV file into an array
            var records = fileHelperEngine.ReadFile(@"C:\File\records.csv");

            // Print each record's Name and Age
            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)
        {
            // Create a FileHelperEngine for the Record class
            var fileHelperEngine = new FileHelperEngine<Record>();
            // Read records from the CSV file into an array
            var records = fileHelperEngine.ReadFile(@"C:\File\records.csv");

            // Print each record's Name and Age
            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)
			' Create a FileHelperEngine for the Record class
			Dim fileHelperEngine As New FileHelperEngine(Of Record)()
			' Read records from the CSV file into an array
			Dim records = fileHelperEngine.ReadFile("C:\File\records.csv")

			' Print each record's Name and Age
			For Each record In records
				Console.WriteLine(record.Name)
				Console.WriteLine(record.Age)
			Next record
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Aber mit IronXL kann dies in nur wenigen Codezeilen erreicht werden.

Mit IronXL können Sie CSV-Dateien aus XLSX, XLS, TSV und mehr parsen. In diesem Tutorial werden wir die folgenden Konvertierungen untersuchen:

  1. CSV-Datei aus XLSX-Datei parsen
  2. CSV-Datei aus XLS-Datei parsen
  3. CSV-Datei aus TSV-Datei parsen

3.1. Eine CSV-Datei aus einer XLSX-Datei parsen

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

Nach der Ausführung wird eine neue Datei mit dem Namen Parsed CSV.csv erstellt.

CSV-Dateien können in jedem Editor gelesen werden. Das folgende Bild zeigt die Ausgabe der generierten CSV-Daten.

using IronXL;

class Program
{
    static void Main()
    {
        // Load the XLSX file into a WorkBook object
        WorkBook wb = WorkBook.Load("test.xlsx");
        // Save the WorkBook as a CSV file
        wb.SaveAsCsv("Parsed CSV.csv");
    }
}
using IronXL;

class Program
{
    static void Main()
    {
        // Load the XLSX file into a WorkBook object
        WorkBook wb = WorkBook.Load("test.xlsx");
        // Save the WorkBook as a CSV file
        wb.SaveAsCsv("Parsed CSV.csv");
    }
}
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Load the XLSX file into a WorkBook object
		Dim wb As WorkBook = WorkBook.Load("test.xlsx")
		' Save the WorkBook as a CSV file
		wb.SaveAsCsv("Parsed CSV.csv")
	End Sub
End Class
$vbLabelText   $csharpLabel

Nach Abschluss der Ausführung wird eine neue Datei mit dem Namen Parsed CSV.csv erstellt. CSV-Dateien können in jedem beliebigen Editor oder Leser geöffnet werden, den Sie wünschen. Das untenstehende Bild zeigt die Ausgabe des obigen Befehls - unsere generierten CSV-Daten. In der Ausgabedatei stehen doppelte Anführungszeichen für fett gedruckte Werte.

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

3.2. CSV-Datei aus XLS-Datei parsen

In diesem Beispiel werden wir sehen, wie man XLS-Dateien in das CSV-Format konvertiert.

Erstellen wir ein XLS-Beispiel, das wir in CSV konvertieren.

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

Führen Sie nun den folgenden Code aus, um die XLS-Datei in eine CSV-Datei zu konvertieren.

using IronXL;

class Program
{
    static void Main()
    {
        // Load the XLS file into a WorkBook object
        WorkBook wb = WorkBook.Load("XLS.xls");
        // Save the WorkBook as a CSV file
        wb.SaveAsCsv("Example2.csv");
    }
}
using IronXL;

class Program
{
    static void Main()
    {
        // Load the XLS file into a WorkBook object
        WorkBook wb = WorkBook.Load("XLS.xls");
        // Save the WorkBook as a CSV file
        wb.SaveAsCsv("Example2.csv");
    }
}
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Load the XLS file into a WorkBook object
		Dim wb As WorkBook = WorkBook.Load("XLS.xls")
		' Save the WorkBook as a CSV file
		wb.SaveAsCsv("Example2.csv")
	End Sub
End Class
$vbLabelText   $csharpLabel

Nachdem die Ausführung des oben genannten Codes abgeschlossen ist, haben Sie eine neu generierte CSV-Datei.

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

3.3. CSV-Datei aus TSV-Datei parsen

Tabellenkalkulationsanwendungen verwenden häufig TSV-Dateien oder Tab-Separated Values-Dateien, um Daten zwischen Datenbanken zu übertragen. Es speichert eine Datentabelle mit Tabs, die die Daten Spalten trennen, wobei jeder Datensatz in einer anderen Zeile steht.

IronXL bietet einen CSV-Parser, um CSV-Dateien aus TSV-Format für eine bessere Datenverwaltung zu analysieren.

Unten ist die Ausgabe im CSV-Format.

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

using IronXL;

class Program
{
    static void Main()
    {
        // Load the TSV file into a WorkBook object
        WorkBook wb = WorkBook.Load("TSV.tsv");
        // Save the WorkBook as a CSV file
        wb.SaveAsCsv("Example3.csv");
    }
}
using IronXL;

class Program
{
    static void Main()
    {
        // Load the TSV file into a WorkBook object
        WorkBook wb = WorkBook.Load("TSV.tsv");
        // Save the WorkBook as a CSV file
        wb.SaveAsCsv("Example3.csv");
    }
}
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Load the TSV file into a WorkBook object
		Dim wb As WorkBook = WorkBook.Load("TSV.tsv")
		' Save the WorkBook as a CSV file
		wb.SaveAsCsv("Example3.csv")
	End Sub
End Class
$vbLabelText   $csharpLabel

Unten sehen Sie die Ausgabe im CSV-Format. C# CSV-Parser (Schritt-für-Schritt) Tutorial, Abbildung 11: Die Ausgabe-CSV-Datei Die Ausgabe-CSV-Datei

4. Fazit

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

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

Sehen Sie sich die Funktionen, Codebeispiele und Dokumentation von IronXL an, um mehr Informationen darüber zu erhalten, wie IronXL funktioniert. Kaufen Sie die komplette Iron Suite, um Lizenzen für alle fünf Iron Software-Bibliotheken zum Preis von zwei IronXL Bibliothek-Lizenzen zu erhalten! Besuchen Sie die Lizenzseite für weitere Informationen zu den Lizenzbedingungen und -anforderungen.

Kaufen Sie die komplette Iron Suite, um Lizenzen für alle fünf Iron Software Bibliotheken zum Preis von zwei IronXL Bibliothekslizenzen zu erhalten!

Vielen Dank fürs Lesen!

Häufig gestellte Fragen

Wie kann ich CSV-Dateien in C# ohne Verwendung von Interop parsen?

IronXL ermöglicht das Parsen von CSV-Dateien in C# ohne Interop. Sie können eine CSV-Datei in ein WorkBook-Objekt laden und direkt manipulieren, es in andere Formate wie XLSX oder XLS umwandeln mit nur wenigen Codezeilen.

Welche Schritte sind erforderlich, um die IronXL-Bibliothek in Visual Studio zu installieren?

Um die IronXL-Bibliothek in Visual Studio zu installieren, öffnen Sie die NuGet-Paketmanager-Benutzeroberfläche, suchen Sie nach 'IronXL' und installieren Sie es. Alternativ können Sie die Kommandozeile von Visual Studio verwenden und den Befehl Install-Package IronXL.Excel in der Paketmanager-Konsole ausführen.

Wie kann ich CSV-Dateien in Excel-Formate in C# konvertieren?

Mit IronXL können Sie CSV-Dateien in Excel-Formate wie XLSX oder XLS konvertieren, indem Sie die CSV in ein WorkBook-Objekt laden und mit Methoden wie SaveAsXlsx im gewünschten Format speichern.

Ist es möglich, TSV-Dateien zu parsen und in CSV in C# zu konvertieren?

Ja, IronXL ermöglicht das Parsen von TSV-Dateien. Laden Sie die TSV-Datei in ein WorkBook-Objekt und verwenden Sie die Methode SaveAsCsv, um sie in eine CSV-Datei zu konvertieren.

Welche Funktionen bietet eine C# Excel-Bibliothek zur Datenmanipulation?

IronXL bietet Funktionen wie Datenmanipulation, Diagrammverwaltung, Zellformatierung und Kompatibilität mit Excel-Verschlüsselung. Es unterstützt Vorgänge wie das Einfrieren von Fensterbereichen, Formeln und bedingte Formatierung.

Wie kann ich Excel-Tabellenformate programmatisch in C# verwalten?

IronXL ermöglicht die Verwaltung verschiedener Tabellenformate wie XLSX, XLS und CSV. Es bietet Methoden zum Konvertieren zwischen diesen Formaten und zur effizienten Datenverarbeitung innerhalb von .NET-Anwendungen.

Kann ich eine Excel-Bibliothek für C# ausprobieren, bevor ich sie kaufe?

Ja, IronXL bietet eine kostenlose 30-Tage-Testversion zum Download von der NuGet-Website an. So können Sie die Funktionen testen und sicherstellen, dass sie Ihren Anforderungen entsprechen, bevor Sie einen Kauf tätigen.

Welche Vorteile bietet IronXL für das Parsen und Konvertieren von CSV-Dateien?

IronXL vereinfacht den Vorgang des Parsens und Konvertierens von CSV-Dateien mit minimalem Code. Es gewährleistet eine effiziente Datenverarbeitung und bietet umfangreiche Funktionen, die die Excel-Dateimanipulation in C#-Anwendungen verbessern.

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