IRONSOFTWAREHOME
UTILISATION D'IRONXL

Bibliothèque CSV C# : Tutoriel complet en utilisant IronXL

Curtis Chau
Curtis Chau
Updated: 28 juin 2026

Travailler avec des fichiers CSV en C# nécessite une bibliothèque qui gère plus qu'une simple analyse de lignes. Vous avez besoin d'une détection fiable de l'encodage, d'une gestion correcte des délimiteurs, d'un typage fort et, idéalement, de la possibilité de déplacer des données entre CSV et Excel sans maintenir deux dépendances distinctes. IronXL offre tout cela dans une seule bibliothèque .NET – sans Microsoft Office, sans interopérabilité COM et sans solutions de contournement fragiles. Que vous traitiez des fichiers de données plats sur un serveur, construisiez un pipeline de données ou proposiez aux utilisateurs le téléchargement d'une feuille de calcul, IronXL vous offre une API unique et cohérente pour chaque format.

Comment configurer une bibliothèque de feuilles de calcul C# ?

L'installation IronXL via NuGet prend moins d'une minute. Ouvrez la console du gestionnaire de packages dans Visual Studio et exécutez la commande ci-dessous, ou utilisez l'interface de ligne de commande .NET depuis n'importe quel terminal :

PM > Install-Package IronXL.Excel

Une fois le package installé, ajoutez l'espace de noms à tous les fichiers dans lesquels vous souhaitez travailler avec des données de type tableur :

using IronXL;

IronXL cible .NET Framework 4.6.2+ et toutes les versions modernes de .NET (Core, 5, 6, 7, 8, 9 et 10). Il fonctionne sous Windows, Linux et macOS, ce qui le rend adapté aussi bien aux outils de bureau qu'aux charges de travail de serveurs conteneurisés. Consultez le guide d'installation d'IronXL pour obtenir des instructions étape par étape concernant les sources des paquets et l'activation de la licence.

Comment lire des fichiers CSV en C# ?

La lecture d'un fichier CSV avec IronXL suit le même schéma que le chargement de n'importe quelle feuille de calcul. Appelez WorkBook.Load avec le chemin d'accès au fichier et IronXL déduit le format à partir de l'extension -- aucune configuration supplémentaire n'est nécessaire :

// Load a CSV file into a WorkBook
WorkBook workBook = WorkBook.Load("sales_data.csv");

// Access the default worksheet
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Read individual cells by Excel-style address
string customerName = workSheet["A2"].StringValue;
decimal orderAmount = workSheet["B2"].DecimalValue;

// Iterate rows, starting at index 1 to skip the header
for (int i = 1; i < workSheet.Rows.Count(); i++)
{
    var row = workSheet.Rows[i];
    Console.WriteLine($"Customer: {row.Columns[0].Value}, Amount: {row.Columns[1].Value}");
}

L'objet WorkBook expose le modèle complet de la feuille de calcul. Vous accédez aux cellules avec la notation Excel familière telle que "A2", et les propriétés de conversion intégrées -- StringValue, DecimalValue, IntValue, DateTimeValue -- gèrent la coercition de type afin que vous n'ayez pas à analyser manuellement les chaînes de caractères.

Quelles sont les options d'adressage cellulaire disponibles ?

Au-delà de l'accès à une seule cellule, IronXL prend en charge la notation de plage et l'itération de lignes/colonnes. Vous pouvez adresser un bloc rectangulaire de cellules avec une expression de plage comme workSheet["A2:C10"] et le parcourir comme une collection plate. Ceci est utile lorsque vous souhaitez valider ou transformer un bloc de données connu sans écrire de boucles imbriquées :

// Access a range and print each value
foreach (var cell in workSheet["A2:C10"])
{
    Console.WriteLine($"{cell.AddressString}: {cell.Value}");
}

Pour les comptes de lignes dynamiques, la collection workSheet.Rows reflète automatiquement les données chargées, de sorte qu'il n'est pas nécessaire de coder en dur les comptes de lignes. Consultez le tutoriel C# sur la lecture de fichiers CSV pour découvrir d'autres modèles, notamment la détection d'en-têtes et les fichiers à encodage multiple.

Comment faire correspondre les lignes CSV à des objets personnalisés ?

Une exigence courante consiste à convertir des données CSV tabulaires en une collection typée. Vous pouvez parcourir les lignes et projeter chacune d'elles dans une classe C# simple :

public record SalesRecord(string Customer, decimal Amount, DateTime OrderDate);

WorkBook workBook = WorkBook.Load("sales_data.csv");
WorkSheet workSheet = workBook.DefaultWorkSheet;

var records = new List<SalesRecord>();

// Start at row 1 to skip the header row (row 0)
for (int i = 1; i < workSheet.Rows.Count(); i++)
{
    var row = workSheet.Rows[i];
    records.Add(new SalesRecord(
        Customer: row.Columns[0].StringValue,
        Amount: row.Columns[1].DecimalValue,
        OrderDate: row.Columns[2].DateTimeValue
    ));
}

Cette approche sépare clairement la logique d'analyse syntaxique de la logique métier et rend chaque enregistrement fortement typé dans le reste de votre application.

Comment utiliser une bibliothèque CSV C# pour lire et écrire des fichiers : Figure 1 - Lecture du fichier CSV

Comment écrire des fichiers CSV en C# ?

La création d'un fichier CSV à partir de zéro comporte trois étapes : créer un WorkBook, remplir un WorkSheet, et appeler un SaveAsCsv. Le processus est identique à la manière dont vous créeriez n'importe quelle feuille de calcul, ce qui garantit la cohérence de l'API quel que soit le format de sortie :

// Create a new workbook and worksheet
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.CreateWorkSheet("inventory");

// Write header row
workSheet["A1"].Value = "Product";
workSheet["B1"].Value = "Quantity";
workSheet["C1"].Value = "Price";

// Write data rows
workSheet["A2"].Value = "Widget A";
workSheet["B2"].Value = 250;
workSheet["C2"].Value = 9.99;

workSheet["A3"].Value = "Gadget B";
workSheet["B3"].Value = 120;
workSheet["C3"].Value = 24.50;

// Export to CSV
workBook.SaveAsCsv("inventory.csv");

SaveAsCsv gère le placement des délimiteurs, la citation des champs contenant des virgules et la normalisation des nouvelles lignes. Vous n'avez rien à gérer manuellement. IronXL préserve les types numériques lors de l'exportation afin que les outils en aval tels qu'Excel ou pandas lisent les nombres comme des nombres, et non comme des chaînes de texte entre guillemets.

Comment exporter un DataTable au format CSV ?

De nombreuses applications récupèrent des données d'une base de données dans un DataTable. IronXL peut insérer un DataTable entier dans une feuille de calcul en un seul appel, ce qui facilite les exportations en masse :

DataTable dataTable = GetProductsFromDatabase();

WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.CreateWorkSheet("products");

workSheet.InsertDataTable(dataTable, "A1");

workBook.SaveAsCsv("products.csv");

La méthode InsertDataTable écrit les en-têtes de colonnes à partir du schéma DataTable et remplit toutes les lignes à partir de l'adresse que vous fournissez. Pour les grands ensembles de données, cette méthode est bien plus efficace que de parcourir les lignes manuellement. Consultez la documentation relative à l'exportation au format CSV pour connaître les options disponibles, notamment les délimiteurs personnalisés et les paramètres d'encodage.

Comment utiliser une bibliothèque CSV C# pour lire et écrire des fichiers : Figure 2 - Fichier CSV nouvellement créé avec IronXL

Comment convertir des fichiers CSV en fichiers Excel et inversement en C# ?

L'une des fonctionnalités les plus précieuses d' IronXL est la conversion bidirectionnelle entre les formats CSV et Excel. L'API est symétrique -- Load lit n'importe quel format pris en charge, et la famille de méthodes Save écrit dans votre format cible :

// Convert CSV to Excel
WorkBook csvWorkBook = WorkBook.Load("data.csv");
csvWorkBook.SaveAs("data.xlsx");

// Convert Excel back to CSV
WorkBook xlsxWorkBook = WorkBook.Load("report.xlsx");
xlsxWorkBook.SaveAsCsv("report.csv");

Ces conversions préservent l'intégrité des données. Les valeurs numériques restent numériques, les champs de date conservent leur type et les résultats des formules sont évalués à leurs valeurs calculées avant d'être enregistrés. Lorsque vous convertissez un fichier Excel multi-feuilles au format CSV, IronXL crée automatiquement un fichier CSV distinct pour chaque feuille de calcul :

WorkBook multiSheetWorkBook = WorkBook.Load("quarterly_report.xlsx");

// Produces: quarterly_report.Sheet1.csv, quarterly_report.Sheet2.csv, etc.
multiSheetWorkBook.SaveAsCsv("quarterly_report.csv");

Ce comportement est particulièrement utile pour les processus de reporting où les utilisateurs en aval attendent un sujet par fichier. Le tutoriel sur l'écriture CSV aborde des options supplémentaires, comme la spécification du délimiteur et le contrôle des feuilles incluses dans l'exportation.

Comment utiliser une bibliothèque CSV C# pour lire et écrire des fichiers : Figure 3 - Fichier Excel multipage enregistré sous forme de fichiers CSV distincts

Comment utiliser une bibliothèque CSV C# pour lire et écrire des fichiers : Figure 4 - Fichier Excel original comparé au fichier CSV converti

Première étape :
arrow pointer

Pourquoi les bibliothèques basées uniquement sur le format CSV sont-elles insuffisantes pour les projets réels ?

De nombreux développeurs C# commencent par CsvHelper ou le TextFieldParser de Microsoft.VisualBasic. Ce sont deux outils performants pour les flux de travail utilisant exclusivement des fichiers CSV. Le problème apparaît lorsque les exigences évoluent : un intervenant demande un téléchargement Excel au lieu d'un fichier CSV, le service financier a besoin que les formules soient conservées ou la politique de sécurité exige des fichiers protégés par mot de passe. À ce stade, une bibliothèque compatible uniquement avec les fichiers CSV vous oblige à ajouter une seconde dépendance et à maintenir deux chemins d'intégration distincts. Une bibliothèque de feuilles de calcul unifiée élimine cette séparation dès le départ.

Comparaison des fonctionnalités entre IronXL et les bibliothèques CSV uniquement
CapacitéIronXLCsvHelperTextFieldParser
Lire des fichiers CSVOuiOuiOui
Écrire des fichiers CSVOuiOuiNon
Lecture/écriture XLSXOuiNonNon
Évaluation de la formuleOuiNonNon
Style et formatage de celluleOuiNonNon
Fichiers protégés par mot de passeOuiNonNon
Dépendance au bureau requiseNonNonNon
Multiplateforme (.NET 10)OuiOuiLimitée

Quelles sont les fonctionnalités supplémentaires offertes par une bibliothèque unifiée pour les feuilles de calcul ?

Au-delà de la simple conversion de format, une bibliothèque qui gère à la fois les formats CSV et Excel vous offre des opérations de tableur qui deviennent utiles à mesure que les projets se développent. Avec IronXL en particulier, vous obtenez :

  • Évaluation de formules - vous pouvez écrire des formules comme =SUM(B2:B10) dans des cellules et relire le résultat calculé sans qu'Excel soit présent.
  • Style des cellules et des plages : appliquez des épaisseurs de police, des couleurs d'arrière-plan, des formats de nombre et des bordures via l' API de style IronXL .
  • Protection par mot de passe -- ouvrez des classeurs cryptés avec WorkBook.Load("secure.xlsx", "password") et enregistrez de nouveaux fichiers avec cryptage.
  • Plages nommées : définissez et référencez des régions nommées comme dans Excel, ce qui simplifie la création de formules et la validation des données.
  • Prise en charge des fichiers volumineux -- IronXL traite les données en code géré sans charger l'intégralité du fichier en mémoire en une seule fois, ce qui permet de maintenir une utilisation prévisible de la mémoire même pour les fichiers contenant des dizaines de milliers de lignes.

La page des fonctionnalités IronXL contient la liste complète des opérations prises en charge.

Comment IronXL gère-t-il les déploiements multiplateformes ?

Un problème récurrent avec les bibliothèques de tableurs est leur comportement spécifique à chaque plateforme. Les bibliothèques qui dépendent de l'interopérabilité COM ne fonctionnent que sous Windows, et les bibliothèques qui interagissent avec Office nécessitent une installation d'Office. IronXL est un code entièrement géré sans dépendances natives, ce qui permet au même binaire de fonctionner sans modification sur des conteneurs Linux, des machines de développement macOS et des serveurs Windows. Cela simplifie le déploiement sur Azure , AWS, Docker ou toute cible .NET 10.

Pour les développeurs qui créent des pipelines de données avec des outils comme Dapper ou Entity Framework Core , IronXL s'intègre naturellement comme couche de sérialisation : il lit les fichiers CSV, les traite avec votre ORM et exporte les résultats aux formats XLSX ou CSV. La page de licences IronXL détaille les différents niveaux de licences disponibles pour un usage commercial.

Comment utiliser une bibliothèque CSV C# pour lire et écrire des fichiers : Figure 5 - Tableau comparatif IronXL vs. bibliothèques CSV uniquement

Quelles sont vos prochaines étapes ?

IronXL vous offre une API unique et cohérente pour la lecture, l'écriture et la conversion de fichiers CSV et Excel dans n'importe quelle application .NET 10. Les principaux avantages sont simples : aucune dépendance à Office, compatibilité multiplateforme, saisie robuste des valeurs de cellules et passage direct des projets utilisant uniquement le format CSV à une fonctionnalité complète de tableur dès que les besoins évoluent.

Lorsque vous serez prêt à approfondir le sujet, commencez par les thèmes les plus pertinents pour votre projet actuel. Si vous travaillez principalement avec des pipelines d'importation CSV, les modèles de lecture et de mappage présentés ci-dessus couvrent la majorité des scénarios réels. Si vos exigences de sortie varient (parfois CSV pour les scripts en aval, parfois XLSX pour les utilisateurs finaux), la section sur la conversion de format montre comment fournir les deux avec une seule base de code.

Pour les équipes qui créent des systèmes de reporting ou qui exportent des résultats à partir de bases de données, l'approche InsertDataTable s'adapte bien et évite les surcoûts de performance liés à l'affectation des cellules ligne par ligne. Associez cela à la mise en forme des cellules pour produire des rapports que les utilisateurs peuvent ouvrir directement dans Excel sans reformatage.

Pour aller de l'avant, suivez ces étapes :

  1. Installez la bibliothèque via NuGet en utilisant Install-Package IronXL ou dotnet add package IronXL.
  2. Suivez le guide de démarrage rapide d' IronXL pour charger votre premier fichier CSV.
  3. Explorez la conversion de format avec le tutoriel CSV vers Excel lorsque vous avez besoin des deux formats dans le même projet.
  4. Consultez la documentation de l'API dans la section Référence des objets IronXL pour obtenir des informations sur les opérations avancées sur les cellules, la prise en charge des formules et le style.
  5. Démarrez un essai gratuit sur la page de licence d'essai IronXL – aucune carte de crédit requise, assistance technique incluse.

Si vous évaluez les options en parallèle avec d'autres outils Iron Software , la Suite de produits IronSoftware couvre la génération de PDF avec IronPDF , la lecture de codes-barres, l'OCR et bien plus encore – le tout partageant le même modèle de licence et le même canal de support.

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