IRONSOFTWAREHOME
IRONXL VERWENDEN

Wie man eine CSV-Datei in eine Liste in C# konvertiert

Curtis Chau
Curtis Chau
Updated: 28. Juni 2026

In diesem Tutorial für Anfänger werden wir sehen, wie man CSV-Dateien liest in eine Liste in C# mit der IronXL Bibliothek. Nun, dies ist eine der grundlegendsten Dinge, die Sie in jeder Programmiersprache wissen müssen, da CSV-Dateien eine sehr übliche Methode sind, um Daten zu speichern und von einem System oder einer Anwendung zu einer anderen zu übertragen. Wir werden alles abdecken, von der Einrichtung des Projekts bis zum effektiven Parsen von CSV-Dateien.

How to Convert CSV File into List in C#

  1. Erstellen Sie ein C#-Konsolenprojekt in Visual Studio.
  2. Installieren Sie die C#-CSV-Bibliothek mit dem NuGet-Paket-Manager.
  3. Laden Sie die CSV-Datei mithilfe der WorkBook.LoadCSV Methode.
  4. Lesen Sie Datenwerte aus der Datei und füllen Sie die Liste.
  5. Drucken Sie die Liste auf der Konsole aus.

Einrichten Ihres Projekts

Schritt 1: Erstellen eines neuen C#-Projekts

  1. Visual Studio öffnen: Starten Sie Visual Studio auf Ihrem Computer.
  2. Neues Projekt erstellen: Klicken Sie auf "Neues Projekt erstellen". Dies öffnet ein Fenster, in dem Sie den Projekttyp auswählen können.
  3. Projekttyp auswählen: Wählen Sie der Einfachheit halber "Konsolenanwendung (.NET Core)" als Projekttyp.
  4. Benennen Sie Ihr Projekt: Benennen Sie Ihr Projekt CSVFileReader .
  5. Speicherort auswählen: Wählen Sie einen geeigneten Speicherort auf Ihrem Gerät, um dieses Projekt zu speichern.
  6. Projekt generieren: Klicken Sie auf "Erstellen", um Ihr neues C#-Projekt zu initialisieren.

Schritt 2: Installation der IronXL-Bibliothek

  1. NuGet -Paket-Manager öffnen: Gehen Sie in Visual Studio zum Menü "Tools", wählen Sie dann "NuGet -Paket-Manager" und anschließend " NuGet -Pakete für Projektmappe verwalten…".

  2. IronXL suchen: Klicken Sie auf die Registerkarte "Durchsuchen" und suchen Sie nach "IronXL.Excel".

    Wie man eine CSV-Datei in eine Liste in C# konvertiert: Abbildung 1 - IronXL

  3. Installieren Sie IronXL: Suchen Sie das IronXL Paket in den Suchergebnissen, wählen Sie es aus und klicken Sie auf "Installieren". Stellen Sie sicher, dass Sie allen Lizenzvereinbarungen zustimmen und überprüfen Sie die Änderungen.

  4. Installation prüfen: Nach der Installation sollte IronXL in den Projektverweisen aufgeführt sein.

Nun ist Ihr CSVFileReader-Projekt mit der IronXL-Bibliothek eingerichtet und Sie können mit dem Lesen und Verarbeiten von CSV-Dateien in C# beginnen. Diese Einrichtung bildet die Grundlage für die CSV-Leseaufgaben, die wir in den folgenden Abschnitten dieses Tutorials durchführen werden.

Parsing and Processing CSV Files in C#

Nach dem Einrichten des Projekts und der Installation der IronXL-Bibliothek konzentrieren wir uns nun auf das Parsen und Verarbeiten von CSV-Dateien. Wir arbeiten mit der Program.cs Datei, die automatisch in Ihrem CSVFileReader Projekt generiert wird.

Schritt 1: Angeben des Dateipfads

Bevor wir Daten lesen können, müssen wir wissen, wo sich unsere CSV-Datei befindet. Definieren Sie eine Variable in der Main Methode, um den Dateipfad zu speichern.

string filename = "csvfile.csv"; // Replace with your actual file path

Schritt 2: Laden der CSV-Datei

IronXL macht es einfach, eine CSV-Datei zu laden. Verwenden Sie die WorkBook.LoadCSV Methode, um die CSV-Datei in ein WorkBook Objekt zu lesen.

var csv = WorkBook.LoadCSV(filename);

Schritt 3: Definieren einer Datenstruktur

Erstellen Sie eine Klasse, die die Datenstruktur in Ihrer CSV-Datei darstellt. Wenn Ihre CSV zum Beispiel Informationen über Personen enthält, definieren Sie eine Person Klasse wie diese:

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

Schritt 4: Parsen von CSV-Daten

In diesem Schritt werden wir die CSV-Datei analysieren und ein List<Person> mit den Daten befüllen. Wir verwenden IronXL, um das CSV-Lesen zu handhaben, und der Schlüssel ist es, jede Zeile oder Zeile der CSV korrekt zu verarbeiten, die Überschriften und mögliche leere Zeilen zu berücksichtigen. Hier ist eine detaillierte Aufschlüsselung des Codes:

List<Person> people = new List<Person>();
bool isFirstRow = true; // Add a flag to check for the first row
foreach (var row in csv.WorkSheets[0].Rows)
{
    if (isFirstRow)
    {
        isFirstRow = false; // Set the flag to false after skipping the first row
        continue;
    }
    if (row.IsEmpty) continue; // Skip empty rows
    var cells = row.ToArray();
    var person = new Person()
    {
        Name = cells[0].StringValue,
        Age = int.Parse(cells[1].StringValue) // Ensure this is a numeric value
    };
    people.Add(person);
}

Bei diesem Analyseprozess initialisieren wir zuerst ein List<Person>, um die analysierten Daten zu speichern, und verwenden ein booleanes Flag isFirstRow, um die Kopfzeile der CSV-Datei zu überspringen. Die foreach Schleife iteriert durch jede Zeile der CSV-Datei. Während der ersten Iteration wird die Kopfzeile identifiziert und übersprungen, wodurch sichergestellt wird, dass nur Datenzeilen verarbeitet werden. Wir überprüfen dann jede Zeile, um sicherzustellen, dass sie nicht leer ist, mithilfe von row.IsEmpty. Dieser Schritt ist entscheidend, um Parsing-Fehler mit leeren Zeilen zu vermeiden.

Für jede Datenzeile konvertieren wir die Zeile in ein Array von Zellen (row.ToArray()) und erstellen dann ein Person Objekt mit diesen Daten. Es ist entscheidend, Datenarten korrekt zu analysieren und zu konvertieren, wie z.B. die Umwandlung des 'Age'-Strings in einen Integer. Das analysierte Person Objekt wird dann zu unserer people Liste hinzugefügt. Dieser Ansatz stellt sicher, dass nur gültige Datenzeilen verarbeitet und gespeichert werden und effektiv potenzielle Probleme wie nicht-numerische Zeichenfolgen in numerischen Spalten oder unerwartet leere Zeilen behandelt werden.

Schritt 5: Anzeigen der Daten

Nach der Analyse der CSV-Daten in unserem List<Person> ist der nächste wichtige Schritt, die Daten anzuzeigen und zu überprüfen. Dies hilft nicht nur sicherzustellen, dass unser Parsing erfolgreich war, sondern erlaubt uns auch, die Ausgabe zu beobachten und eine schnelle Überprüfung der Datenqualität durchzuführen. So können Sie dies implementieren:

foreach (var person in people)
{
    Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}

Hier ist der vollständige Program.cs-Code:

using IronXL;
using System;
using System.Collections.Generic;

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

class Program
{
    static void Main(string[] args)
{
    string filename = @"C:\Users\tayya\Downloads\sample_data.csv"; // Replace with your actual file path
    var csv = WorkBook.LoadCSV(filename);
    List<Person> people = new List<Person>();
    bool isFirstRow = true; // Add a flag to check for the first row
    foreach (var row in csv.WorkSheets[0].Rows)
    {
        if (isFirstRow)
        {
            isFirstRow = false; // Set the flag to false after skipping the first row
            continue;
        }
        if (row.IsEmpty) continue; // Skip empty rows
        var cells = row.ToArray();
        var person = new Person()
        {
            Name = cells[0].StringValue,
            Age = int.Parse(cells[1].StringValue) // Ensure this is a numeric value
        };
        people.Add(person);
    }
    foreach (var person in people)
    {
        Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
    }
}

Ausgabe des Codes

Wenn Sie die Datei ausführen, werden die Daten der Liste in der Konsole angezeigt:

Wie man eine CSV-Datei in eine Liste in C# konvertiert: Abbildung 2 - Listenausgabe

Umgang mit verschiedenen Datentypen

Beim Umgang mit verschiedenen Datentypen in einer CSV-Datei ist es wichtig, die Parsing-Logik an den spezifischen Typ jeder Daten-Spalte anzupassen. Im Beispiel der Person Klasse, während das Name ein String ist und direkt mit StringValue zugewiesen werden kann, erfordern numerische Felder wie Age eine Umwandlung von String zu Integer mittels Int32.Parse oder Convert.ToInt32. Dies ist notwendig, um Typinkongruenzfehler zu vermeiden.

Für komplexere Datentypen, wie z.B. Daten, verwenden Sie DateTime.Parse, um Stringdarstellungen von Daten in DateTime Objekte zu konvertieren. Es ist wichtig, sich des Datumsformats bewusst zu sein, das in Ihrer CSV-Datei verwendet wird, und sicherzustellen, dass es mit dem in Ihrem Code erwarteten Format übereinstimmt. Inkonsistente Datumsformate können zu Parsing-Fehlern oder falscher Dateninterpretation führen.

Abschluss

Sie haben gerade gelernt, wie man eine CSV-Datei mit IronXL in C# liest, parst und die Daten anzeigt. Dieser Ansatz kann auf verschiedene Datentypen und Dateiformate angewendet werden. Dies stellt somit eine insgesamt nützliche Fähigkeit für jeden Entwickler dar, der C# als Hauptsprache wählt.

IronXL bietet eine kostenlose Testversion an, damit Nutzer seine Funktionen ausprobieren können. Sobald die Testzeit endet, beginnt die Lizenzierung für IronXL zu einem Startpreis von $999.

Bedenken Sie, dass Ausnahmen und Randfälle behandelt werden müssen, um robusteren Code zu schreiben, insbesondere beim Umgang mit verschiedenen Datentypen und der Verwendung großer Dateien. Experimentieren und erkunden Sie weiterhin die Funktionen von IronXL, um das Verarbeiten Ihrer Daten in C# zu verbessern. Viel Spaß beim Coden!

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 Handbücher.

...
Weiterlesen

Verwandte Artikel

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
AWS-Logo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Azure (WebApps, Funktionen v3)
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Azure (WebApps, Funktionen v3)
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.