IRONSOFTWAREHOME
UTILISATION D'IRONXL

Comment convertir un fichier CSV en liste en C#

Curtis Chau
Curtis Chau
Updated: 28 juin 2026

Dans ce tutoriel pour débutants, nous allons voir comment lire des fichiers CSV dans une liste en C# en utilisant la bibliothèque IronXL. Eh bien, c'est l'une des choses les plus basiques que vous devez savoir dans n'importe quel langage de programmation, car les fichiers CSV sont un moyen très courant de stocker des données et de les transférer d'un système ou d'une application à un autre. Nous couvrirons tout, de la configuration de votre projet à l'analyse efficace des fichiers CSV.

How to Convert CSV File into List in C#

  1. Créez un projet de console C# dans Visual Studio.
  2. Installez la bibliothèque CSV C# en utilisant le gestionnaire de packages NuGet.
  3. Chargez le fichier CSV en utilisant la méthode WorkBook.LoadCSV.
  4. Lisez les valeurs de données du fichier et remplissez la liste.
  5. Imprimez la liste sur la console.

Configuration de votre projet

Étape 1 : Créer un nouveau projet C#

  1. Ouvrez Visual Studio : Lancez Visual Studio sur votre ordinateur.
  2. Créer un nouveau projet : Cliquez sur " Créer un nouveau projet ". Cela ouvre une fenêtre où vous pouvez sélectionner le type de projet.
  3. Sélectionnez le type de projet : Choisissez " Application console (.NET Core) " comme type de projet pour plus de simplicité.
  4. Nommez votre projet : Nommez votre projet CSVFileReader .
  5. Choisir l'emplacement : Sélectionnez un emplacement approprié sur votre appareil pour enregistrer ce projet.
  6. Générer le projet : Cliquez sur " Créer " pour initialiser votre nouveau projet C#.

Étape 2 : Installer la bibliothèque IronXL

  1. Ouvrez le Gestionnaire de packages NuGet : dans Visual Studio, accédez au menu " Outils ", puis sélectionnez " Gestionnaire de packages NuGet " et choisissez " Gérer les packages NuGet pour la solution… ".

  2. Recherchez IronXL: Cliquez sur l'onglet " Parcourir " et recherchez "IronXL.Excel ".

    Comment convertir un fichier CSV en liste en C# : Figure 1 - IronXL

  3. Installez IronXL: Trouvez le package IronXL dans les résultats de recherche, sélectionnez-le et cliquez sur " Installer ". Assurez-vous d'accepter les accords de licence et de prendre connaissance des modifications.

  4. Vérifiez l'installation : après l'installation, vous devriez voir IronXL référencé dans les références de votre projet.

Maintenant, votre projet CSVFileReader est configuré avec la bibliothèque IronXL, et vous êtes prêt à commencer à lire et traiter des fichiers CSV en C#. Cette configuration forme la base des tâches de lecture CSV que nous entreprendrons dans les sections suivantes de ce tutoriel.

Parsing and Processing CSV Files in C#

Avec le projet configuré et la bibliothèque IronXL installée, concentrons-nous sur l'analyse et le traitement des fichiers CSV. Nous allons travailler dans le fichier Program.cs, qui est automatiquement généré dans votre projet CSVFileReader.

Étape 1 : Spécification du chemin du fichier

Avant de pouvoir lire des données, nous devons savoir où se trouve notre fichier CSV. Définissez une variable dans la méthode Main pour stocker le chemin du fichier.

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

Étape 2 : Chargement du fichier CSV

IronXL simplifie le chargement d'un fichier CSV. Utilisez la méthode WorkBook.LoadCSV pour lire le fichier CSV dans un objet WorkBook.

var csv = WorkBook.LoadCSV(filename);

Étape 3 : Définition d'une structure de données

Créez une classe qui représente la structure de données dans votre fichier CSV. Par exemple, si votre CSV contient des informations sur les personnes, définissez une classe Person comme ceci :

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

Étape 4 : Analyse des données CSV

Dans cette étape, nous allons analyser le fichier CSV et remplir un List<Person> avec les données. Nous utilisons IronXL pour gérer la lecture des CSV, et l'essentiel est de traiter correctement chaque ligne ou ligne du CSV, en tenant compte des en-têtes et des éventuelles lignes vides. Voici une explication détaillée du code :

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);
}

Dans ce processus d'analyse, nous initialisons d'abord un List<Person> pour stocker les données analysées et utilisons un drapeau booléen isFirstRow pour ignorer la ligne d'en-tête du fichier CSV. La boucle foreach traverse chaque ligne du fichier CSV. Lors de la première itération, la ligne d'en-tête est identifiée et ignorée, garantissant que seules les lignes de données sont traitées. Nous vérifions ensuite chaque ligne pour nous assurer qu'elle n'est pas vide en utilisant row.IsEmpty. Cette étape est cruciale pour éviter les erreurs d'analyse avec les lignes vides.

Pour chaque ligne de données, nous convertissons la ligne en un tableau de cellules (row.ToArray()) puis créons un objet Person avec ces données. Il est crucial d'analyser et de convertir correctement les types de données, comme convertir la chaîne 'Age' en un entier. L'objet Person analysé est ensuite ajouté à notre liste people. Cette approche garantit que seules les lignes de données valides sont traitées et stockées, gérant efficacement les problèmes potentiels comme des chaînes non-numeriques dans des colonnes numériques ou des lignes vides inattendues.

Étape 5 : Affichage des données

Après avoir analysé les données CSV dans notre List<Person>, l'étape importante suivante est d'afficher et de vérifier les données. Cela non seulement aide à s'assurer que notre analyse a réussi, mais nous permet également d'observer la sortie et d'effectuer un contrôle rapide de la qualité des données. Voici comment vous pouvez mettre cela en œuvre :

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

Voici le code complet de Program.cs :

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}");
    }
}

Sortie du code

Lorsque vous exécutez le fichier, il affichera les données de la liste dans la console :

Comment convertir un fichier CSV en liste en C# : Figure 2 - Résultat de la liste

Gestion des différents types de données

Lors de la gestion de divers types de données dans un fichier CSV, il est important d'adapter la logique d'analyse au type spécifique de chaque colonne de données. Dans l'exemple de la classe Person, tandis que Name est une chaîne et peut être directement assignée en utilisant StringValue, les champs numériques comme Age nécessitent une conversion de chaîne en entier en utilisant Int32.Parse ou Convert.ToInt32. C'est essentiel pour éviter les erreurs de type.

Pour des types de données plus complexes, tels que les dates, utilisez DateTime.Parse pour convertir les représentations de chaînes de dates en objets DateTime. Il est important d'être conscient du format de date utilisé dans votre fichier CSV et de s'assurer qu'il correspond au format attendu dans votre code. Les formats de date incohérents peuvent entraîner des erreurs d'analyse ou une interprétation incorrecte des données.

Conclusion

Vous venez d'apprendre comment lire, analyser et afficher les données d'un fichier CSV en utilisant IronXL en C#. Cette approche peut être utilisée sur différents types de structures de données et de formats de fichier. Ainsi, cela représente une compétence utile globale pour chaque développeur se tournant vers C# comme langage principal.

IronXL offre une version d'essai gratuite permettant aux utilisateurs d'expérimenter ses fonctionnalités. Une fois la période d'essai terminée, la licence pour IronXL commence à un prix de départ de $999.

Gardez à l'esprit que les exceptions et les cas limites doivent être traités pour écrire un code plus robuste, en particulier lors de la gestion de différents types de données et de l'utilisation de fichiers volumineux. Continuez à expérimenter et à explorer plus de fonctionnalités d'IronXL pour améliorer le traitement de vos données en C#. Bonne programmation !

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise