Passer au contenu du pied de page
UTILISATION D'IRONXL

Comment écrire un fichier CSV en C#

Cet article va introduire comment écrire des fichiers CSV en utilisant une bibliothèque C# nommée IronXL dans un nouveau projet.

Comment Écrire un Fichier CSV

  1. Installer la bibliothèque C# pour écrire dans un fichier CSV.

  2. Utilisez WorkBook.Create pour créer un nouveau classeur.

  3. Créez une nouvelle feuille de calcul en utilisant WorkBook.CreateWorkSheet.

  4. Ajoutez des valeurs à des cellules individuelles en utilisant workSheet["nom de la cellule"].Value en utilisant var.

  5. Enregistrez la feuille de calcul en tant que fichier CSV en utilisant la méthode SaveAs.

IronXL

IronXL émerge comme un phare d'efficacité pour les développeurs C# cherchant une solution fluide et puissante pour écrire des données dans des fichiers CSV par rapport au package CSVHelper NuGet. Dans le paysage dynamique du développement logiciel, la capacité à gérer et manipuler les données est primordiale, et IronXL se distingue par son ensemble robuste d'outils conçus pour le C#.

Cet article explore les fonctionnalités et méthodologies qui font d'IronXL le choix de prédilection pour les développeurs C# cherchant à améliorer le processus d'écriture de données dans des fichiers CSV, frappant le parfait équilibre entre simplicité et précision.

Créer un Nouveau Projet Visual Studio

Pour commencer à utiliser la bibliothèque IronXL, la première étape consiste à créer un nouveau projet C# dans Visual Studio ou à en charger un existant. Voici les instructions pour générer un nouveau projet dans Visual Studio :

  1. Ouvrez Visual Studio et naviguez vers le menu "Fichier". Un menu déroulant s'affichera ; dans ce menu, sélectionnez "Nouveau". Cette action révélera un autre sous-menu.

Comment Écrire un Fichier CSV en C#, Figure 1 : Menu Fichier File Menu

  1. Dans le sous-menu, trouvez et cliquez sur "Projet". Cela ouvrira une nouvelle fenêtre. Dans cette fenêtre, utilisez la barre de recherche pour trouver "Application Console". Choisissez l'option associée au C# et continuez en cliquant sur le bouton Suivant.

Comment Écrire un Fichier CSV en C#, Figure 2 : Nouveau Projet - Application Console Nouveau Projet - Application Console

  1. Une fenêtre de configuration apparaîtra ensuite. Entrez le nom du projet, spécifiez l'emplacement du projet, et cliquez sur le bouton Suivant.

Comment Écrire un Fichier CSV en C#, Figure 3 : Configurer le Projet Configurer le Projet

  1. La fenêtre finale apparaîtra. Ici, choisissez le framework cible et lancez le processus de création du projet en cliquant sur le bouton Créer.

Comment Écrire un Fichier CSV en C#, Figure 4 : Framework Cible Framework Cible

Installation de la Bibliothèque CSV IronXL

Maintenant que vous avez configuré le projet, il est temps d'incorporer la bibliothèque C# IronXL. Suivez ces étapes pour installer IronXL dans votre projet :

  1. Dans Visual Studio, naviguez vers le menu Outils. Un menu déroulant émergera — sélectionnez le Gestionnaire de Packages NuGet dans ce menu.
  2. Au sein du Gestionnaire de Packages NuGet, choisissez Gérer les Packages NuGet pour la Solution dans le menu latéral qui se déploie.

Comment Écrire un Fichier CSV en C#, Figure 5 : Packages NuGet Packages NuGet

  1. Une nouvelle fenêtre apparaîtra. Allez à l'onglet du navigateur dans cette fenêtre, et dans la barre de recherche, tapez "IronXL". Vous verrez une liste de packages IronXL ; optez pour le dernier et procédez en cliquant sur le bouton Installer.

Comment Écrire un Fichier CSV en C#, Figure 6 : IronXL IronXL

Écrire des Fichiers CSV en Utilisant IronXL

Écrire des données dans un fichier CSV en utilisant la bibliothèque CSV C# IronXL. Dans cette section, nous créerons un nouveau fichier CSV et y écrirons des données. L'exemple suivant utilise la bibliothèque IronXL pour créer un reçu simple dans un fichier CSV. Décomposons le code du programme étape par étape.

Importer IronXL et System.Linq

using IronXL; 
using System.Linq;

// This is the main class where execution starts.
public class Program {
    static void Main() {
        // Main method where all logic is executed
    }
}
using IronXL; 
using System.Linq;

// This is the main class where execution starts.
public class Program {
    static void Main() {
        // Main method where all logic is executed
    }
}
Imports IronXL
Imports System.Linq

' This is the main class where execution starts.
Public Class Program
	Shared Sub Main()
		' Main method where all logic is executed
	End Sub
End Class
$vbLabelText   $csharpLabel

Ces lignes importent les classes et fonctionnalités nécessaires de la bibliothèque IronXL pour travailler avec des fichiers Excel et les méthodes d'extension LINQ de l'espace de noms System.Linq.

Créer un WorkBook et un WorkSheet

// Create a new workbook. This serves as the container for all worksheets.
WorkBook workBook = WorkBook.Create();

// Create a new worksheet within the workbook named "Receipt".
WorkSheet workSheet = workBook.CreateWorkSheet("Receipt");
// Create a new workbook. This serves as the container for all worksheets.
WorkBook workBook = WorkBook.Create();

// Create a new worksheet within the workbook named "Receipt".
WorkSheet workSheet = workBook.CreateWorkSheet("Receipt");
' Create a new workbook. This serves as the container for all worksheets.
Dim workBook As WorkBook = WorkBook.Create()

' Create a new worksheet within the workbook named "Receipt".
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("Receipt")
$vbLabelText   $csharpLabel

Ce code crée un nouveau classeur Excel (WorkBook) et une feuille de calcul (WorkSheet) dans ce classeur nommée "Reçu".

Ajouter des En-têtes

// Set the header row for columns. Headers added for better understanding of data.
workSheet["A1"].Value = "Product"; 
workSheet["B1"].Value = "Price";
// Set the header row for columns. Headers added for better understanding of data.
workSheet["A1"].Value = "Product"; 
workSheet["B1"].Value = "Price";
' Set the header row for columns. Headers added for better understanding of data.
workSheet("A1").Value = "Product"
workSheet("B1").Value = "Price"
$vbLabelText   $csharpLabel

Ces lignes définissent la ligne d'en-tête pour les colonnes dans la première ligne de la feuille de calcul, étiquetant chaque colonne.

Remplir les Informations sur les Articles

// Populate worksheet with product data and their respective prices.
workSheet["A2"].Value = "Item 1"; 
workSheet["B2"].DoubleValue = 20.10; 

workSheet["A3"].Value = "Item 2"; 
workSheet["B3"].DoubleValue = 15.50; 

workSheet["A4"].Value = "Item 3"; 
workSheet["B4"].DoubleValue = 10.25;
// Populate worksheet with product data and their respective prices.
workSheet["A2"].Value = "Item 1"; 
workSheet["B2"].DoubleValue = 20.10; 

workSheet["A3"].Value = "Item 2"; 
workSheet["B3"].DoubleValue = 15.50; 

workSheet["A4"].Value = "Item 3"; 
workSheet["B4"].DoubleValue = 10.25;
' Populate worksheet with product data and their respective prices.
workSheet("A2").Value = "Item 1"
workSheet("B2").DoubleValue = 20.10

workSheet("A3").Value = "Item 2"
workSheet("B3").DoubleValue = 15.50

workSheet("A4").Value = "Item 3"
workSheet("B4").DoubleValue = 10.25
$vbLabelText   $csharpLabel

Ces lignes ajoutent des informations sur trois articles, y compris leurs noms et prix dans la feuille de calcul.

Calculer le Prix Total

// Define the range for price values to be summed.
var range = workSheet["B2:B4"];

// Calculate the sum of prices.
decimal sum = range.Sum();
// Define the range for price values to be summed.
var range = workSheet["B2:B4"];

// Calculate the sum of prices.
decimal sum = range.Sum();
' Define the range for price values to be summed.
Dim range = workSheet("B2:B4")

' Calculate the sum of prices.
Dim sum As Decimal = range.Sum()
$vbLabelText   $csharpLabel

En utilisant LINQ, ce code calcule la somme des prix des cellules B2 à B4. La somme est stockée dans la variable somme.

Afficher et Mettre à Jour le Total dans le WorkSheet

// Display the sum in the console.
System.Console.WriteLine(sum);

// Update the total price in the worksheet.
workSheet["B5"].Value = sum;
// Display the sum in the console.
System.Console.WriteLine(sum);

// Update the total price in the worksheet.
workSheet["B5"].Value = sum;
' Display the sum in the console.
System.Console.WriteLine(sum)

' Update the total price in the worksheet.
workSheet("B5").Value = sum
$vbLabelText   $csharpLabel

La somme est imprimée dans la console, et elle est également mise à jour dans la cellule B5 de la feuille de calcul.

Sauvegarder le Classeur en tant que Fichier CSV

// Save the workbook as a CSV file named "receipt.csv".
workBook.SaveAs("receipt.csv");
// Save the workbook as a CSV file named "receipt.csv".
workBook.SaveAs("receipt.csv");
' Save the workbook as a CSV file named "receipt.csv".
workBook.SaveAs("receipt.csv")
$vbLabelText   $csharpLabel

Enfin, le classeur entier est enregistré en tant que fichier CSV nommé "reçu.csv".

En résumé, ce code crée un reçu de base dans une feuille de calcul Excel en utilisant IronXL, calcule le prix total, l'imprime dans la console, puis sauvegarde la sortie du classeur en tant que fichier CSV. Le reçu inclut des colonnes pour "Produit" et "Prix", et il calcule le prix total basé sur les prix des articles individuels.

Comment Écrire un Fichier CSV en C#, Figure 7 : Sortie du Fichier CSV de Reçu avec En-tête Sortie du Fichier CSV de Reçu avec En-tête

Conclusion

Cet article complet souligne l'importance d'écrire des fichiers CSV en C# et explique le processus en utilisant la bibliothèque IronXL. Il met en évidence la nature fondamentale de cette compétence dans diverses applications orientées données et montre la puissance d'IronXL à simplifier et optimiser les tâches de manipulation de données dans l'écosystème C#. L'approche étape par étape, de la configuration du projet à l'utilisation d'IronXL pour créer un reçu et l'enregistrer en tant que fichier CSV, offre aux développeurs une compréhension pratique de l'intégration fluide entre le C#.

En offrant polyvalence et efficacité, IronXL émerge comme un outil précieux pour les développeurs C# cherchant à améliorer leur programme et à pouvoir gérer et exporter des données dans le format CSV omniprésent, en faisant un atout crucial pour divers scénarios de développement logiciel.

IronXL fournit une solution pour toutes les tâches liées à Excel à réaliser de manière programmatique, que ce soit pour le calcul de formules, le tri de chaînes, le trimming, la recherche et le remplacement, la fusion et la dé-fusion, l'enregistrement de fichiers, etc. Vous pouvez également définir des formats de données pour les cellules.

Pour le tutoriel complet sur l'écriture dans un fichier CSV, visitez ce blog. L'exemple de code pour créer un fichier CSV peut être trouvé dans le blog suivant.

IronXL offre un essai gratuit, vous permettant d'évaluer ses capacités. Si vous le trouvez utile pour vos projets, vous pouvez acheter une licence à partir de $799.

Questions Fréquemment Posées

Comment puis-je écrire des fichiers CSV en C# sans utiliser Interop ?

Vous pouvez utiliser la bibliothèque IronXL pour écrire des fichiers CSV en C# sans avoir besoin d'Interop. IronXL vous permet de créer des classeurs et des feuilles de calcul, d'ajouter des données et de les enregistrer directement en tant que fichiers CSV en utilisant ses méthodes intégrées.

Quels avantages IronXL a-t-il par rapport à CSVHelper pour l'écriture de fichiers CSV ?

IronXL offre une gamme de fonctionnalités plus étendue au-delà de la simple écriture de CSV, telles que le calcul des formules, le formatage des cellules et l'exportation dans divers formats Excel, fournissant une solution plus complète pour les développeurs.

Comment commencer à utiliser IronXL dans un projet C# ?

Pour commencer à utiliser IronXL, vous devez l'installer via le gestionnaire de packages NuGet dans Visual Studio. Créez un nouveau projet C#, accédez à 'Outils', sélectionnez 'Gestionnaire de packages NuGet', recherchez 'IronXL' et installez-le.

IronXL peut-il être utilisé pour manipuler des fichiers Excel en dehors de l'écriture de CSV ?

Oui, IronXL est capable de gérer une large gamme de tâches liées à Excel, telles que la lecture et l'écriture de fichiers Excel, l'exécution de calculs de formules et la gestion des données sur plusieurs feuilles de calcul.

Comment puis-je ajouter des données à une feuille de calcul en C# utilisant IronXL ?

Pour ajouter des données à une feuille de calcul en utilisant IronXL, accédez à des cellules individuelles en utilisant leurs identifiants et attribuez des valeurs en utilisant la propriété Value. Vous pouvez ensuite enregistrer la feuille de calcul dans le format souhaité.

Comment enregistrer un classeur en tant que fichier CSV utilisant IronXL ?

Après avoir créé et rempli votre classeur et votre feuille de calcul dans IronXL, vous pouvez l'enregistrer en tant que fichier CSV en utilisant la méthode SaveAs, spécifiant le chemin et le format du fichier.

Existe-t-il une version d'essai d'IronXL disponible pour évaluation ?

Oui, IronXL propose une version d'essai gratuite, ce qui permet aux développeurs de découvrir et d'évaluer ses fonctionnalités avant de procéder à l'achat.

Comment puis-je calculer le total des nombres dans une feuille de calcul utilisant IronXL ?

Vous pouvez calculer le total des nombres dans une feuille de calcul avec IronXL en utilisant LINQ pour sommer une plage définie de cellules, tirant parti de la compatibilité de la bibliothèque avec les expressions LINQ de C#.

Quels sont les problèmes courants lors de l'écriture de fichiers CSV en C# utilisant IronXL ?

Les problèmes courants peuvent inclure des chemins de fichiers incorrects ou des permissions, des incompatibilités de format de données ou des champs de données manquants. Une gestion des erreurs appropriée et une validation peuvent aider à atténuer ces problèmes.

IronXL peut-il gérer efficacement de grands ensembles de données dans des projets C# ?

Oui, IronXL est conçu pour gérer de grands ensembles de données de manière efficace, permettant aux développeurs de lire, écrire et manipuler des fichiers Excel étendus sans ralentissement significatif des performances.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite