UTILISATION D'IRONXL

Comment convertir un ensemble de données en CSV en C#

Mise à jour février 20, 2024
Partager:

L'article suivant montre comment convertir un ensemble de données C# en fichier CSV.

IronXL est une excellente solution pour travailler avec des feuilles de calcul, que ce soit au format CSV ou au format Excel. IronXL est libre de développement, facile à utiliser et offre des fonctionnalités étendues pour travailler avec n'importe quel type de feuille de calcul. Il est sûr et très performant. Avant d'aller plus loin, présentons brièvement IronXL.

IronXL

IronXL est une Iron Software qui permet aux développeurs C# de lire, générer et modifier des fichiers Excel (et autres fichiers de tableurs) dans les applications et sites web .NET.

IronXL est un moyen rapide et facile de travailler avec Excel et d'autres fichiers de feuilles de calcul en C# et .NET. IronXL fonctionne bien avec .NET Framework, .NET Core et Azure sans qu'il soit nécessaire de recourir à Office Excel Interopm. IronXL ne nécessite pas non plus l'installation de Microsoft Office ni d'autres dépendances de ce type.

Passons maintenant à la création et à l'écriture du code permettant de créer un fichier CSV pour un ensemble de données.

Créer un nouveau projet Visual Studio

Ouvrez l'IDE Visual Studio ; la dernière version de Visual Studio est recommandée, mais vous pouvez utiliser n'importe quelle version selon vos préférences. Veuillez noter que les étapes de création d'un nouveau projet peuvent différer d'une version à l'autre.

Comment convertir un ensemble de données en CSV en C#, Figure 1 : Fenêtre de démarrage de Visual Studio Fenêtre de démarrage de Visual Studio

Cliquez sur Créer un nouveau projet. Une nouvelle fenêtre apparaît comme indiqué ci-dessous.

Comment convertir un ensemble de données en CSV en C#, Figure 2 : Créer un nouveau projet dans Visual Studio Créer un nouveau projet dans Visual Studio

Sélectionnez le modèle de projet de votre choix dans la liste. Cliquez sur le bouton Suivant, et une nouvelle fenêtre apparaîtra comme indiqué ci-dessous.

Comment convertir un ensemble de données en CSV en C#, Figure 3 : Configuration du projet nouvellement créé Configurer le projet nouvellement créé

Nommez votre projet, sélectionnez son emplacement et cliquez sur le bouton Suivant. Une nouvelle fenêtre apparaît comme indiqué ci-dessous.

Comment convertir un jeu de données en CSV en C#, Figure 4 : Sélectionner une version de Framework NET Sélectionner une version du Framework .NET

Sélectionnez votre Framework .NET cible. Vous pouvez choisir n'importe quel Framework .NET qui correspond à vos besoins, car IronXL prend en charge tous les Framework .NET. Ce tutoriel utilisera .NET 7. Cliquez sur le bouton Créer, et un nouveau projet sera créé, comme indiqué ci-dessous.

Comment convertir un ensemble de données en CSV en C#, Figure 5 : une nouvelle application console dans Visual Studio une nouvelle application console dans Visual Studio

Installez maintenant le paquet NuGet IronXL pour l'utiliser dans cette application.

Installer IronXL

Ouvrez la console du gestionnaire de paquets NuGet et entrez la commande suivante.

Install-Package IronXL.Excel

Les Paquet NuGet sera installé et prêt à l'emploi comme indiqué ci-dessous.

How to Convert Dataset to CSV in C#, Figure 6 : L'installation du paquet IronXL et de ses dépendances L'installation du paquet IronXL et de ses dépendances

Maintenant, écrivons un peu de code pour convertir un ensemble de données en un fichier CSV en C#.

Cet exemple permet d'alimenter les données d'une base de données SQL Server. Après avoir obtenu l'ensemble des données de la base de données SQL, nous allons créer un fichier CSV en utilisant ces données d'entrée.

Créer le tableau de données

La première étape consiste à alimenter les données à partir de SQL, mais vous pouvez utiliser n'importe quelle source de données.

Ce tutoriel utilise les données suivantes :

Comment convertir un ensemble de données en CSV en C#, Figure 7 : Créer une nouvelle base de données avec des données d'exemple Créer une nouvelle base de données avec des données d'exemple

Voici le script SQL qui permet de créer les données de l'échantillon :

USE Test_DB
Create Table STUDENT_DATA
(
    REG_NUM INT PRIMARY KEY,
    FIRST_NAME VARCHAR(30),
    LAST_NAME VARCHAR(30),
    CLASS VARCHAR(5),
    CONTACT_NUM VARCHAR(15)
);
INSERT INTO STUDENT_DATA
VALUES
(123, 'JHON', 'SMITH', '2', '(223) 444-1234'),
(124, 'THOMAS', 'CHARLES', '2', '(332) 555-1235'),
(125, 'WILLIAM', 'RICHARD', '2', '(432) 666-1236'),
(126, 'JAMES', 'BOND', '2', '(543) 777-1237'),
(127, 'CRISTOPHER', 'MICHAL', '2', '(555) 999-1238'),
(128, 'DONALD', 'MARK', '2', '(777) 888-1239');

Le code C# suivant est utilisé pour exporter le tableau de données vers un fichier CSV.

public static DataTable getData()
{
    string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
    string query = "select * from STUDENT_DATA";
    try
    {
        SqlConnection conn = new SqlConnection(connString);
        SqlCommand cmd = new SqlCommand(query, conn);
        conn.Open();
        // create data adapter
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        // this will query your database and return the result to your datatable
        DataTable dt = new DataTable();
        da.Fill(dt);
        da.Dispose();
        return dt;
    } catch(Exception)
    {
        throw;
    }
}
static void Main(string [] args)
{
    DataTable table = getData();
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    wb.Metadata.Author = "JOHN";
    WorkSheet ws = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        ws ["A" + (rowCount)].Value = row [0].ToString();
        ws ["B" + (rowCount)].Value = row [1].ToString();
        ws ["C" + (rowCount)].Value = row [2].ToString();
        ws ["D" + (rowCount)].Value = row [3].ToString();
        ws ["E" + (rowCount)].Value = row [4].ToString();
        rowCount++;
    }
    wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv"); // 
}
public static DataTable getData()
{
    string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
    string query = "select * from STUDENT_DATA";
    try
    {
        SqlConnection conn = new SqlConnection(connString);
        SqlCommand cmd = new SqlCommand(query, conn);
        conn.Open();
        // create data adapter
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        // this will query your database and return the result to your datatable
        DataTable dt = new DataTable();
        da.Fill(dt);
        da.Dispose();
        return dt;
    } catch(Exception)
    {
        throw;
    }
}
static void Main(string [] args)
{
    DataTable table = getData();
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    wb.Metadata.Author = "JOHN";
    WorkSheet ws = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        ws ["A" + (rowCount)].Value = row [0].ToString();
        ws ["B" + (rowCount)].Value = row [1].ToString();
        ws ["C" + (rowCount)].Value = row [2].ToString();
        ws ["D" + (rowCount)].Value = row [3].ToString();
        ws ["E" + (rowCount)].Value = row [4].ToString();
        rowCount++;
    }
    wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv"); // 
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Explication du code

La méthode getData() récupérera les données d'une base de données SQL Server, comme nous l'avons vu précédemment.

Dans la fonction principale, elle créera un WorkBook (livre de travail) à l'aide d'IronXL, puis de créer une Feuille de travail.

Dans une boucle "for", les données sont introduites dans les lignes de la feuille de calcul donnée.

Ensuite, enregistrez ce fichier au format CSV à l'aide de la fonction SaveAsCsv (enregistrer sous forme de fichier) fournie par IronXL.

Sortie

Le fichier CSV généré par ce programme est le suivant :

Comment convertir un ensemble de données en CSV en C#, Figure 8 : Le fichier de sortie CSV **Le fichier de sortie CSV

Il est clair que le fichier CSV est généré correctement et qu'il correspond aux données fournies.

Résumé

Cet article a montré comment créer un fichier CSV en C# à partir d'un ensemble de données. La bibliothèque peut également lire des fichiers CSV à l'aide de C#. L'ensemble des données provenant d'une base de données SQL Server est rempli et créé un fichier CSV en trois étapes :

  1. Obtenir des données du serveur SQL.
  2. Introduire des données dans un tableau de données.
  3. Créez un fichier CSV à partir de ce tableau de données.

    Il est très facile de créer un fichier CSV dans .NET 7 à l'aide d'IronXL, comme démontré ci-dessus. La performance du programme est exceptionnelle car il est écrit en .NET 7 avec IronXL. IronXL offre d'autres fonctions utiles telles que la création, la lecture et la manipulation de fichiers Excel. Pour plus d'informations, veuillez consulter le site documentation officielle.

    En outre, IronPDF offre aux développeurs des méthodes pour transformer des documents PDF en images et extraire du texte et du contenu à partir d'un PDF. En outre, IronPDF est également capable de graphiques de rendu en PDF, ajout de codes-barres, renforcer la sécurité avec des mots de passe de manière programmatique.

    La version gratuite d'IronXL est utilisée à des fins de développement. Pour déployer une application en production, veuillez obtenir un essai gratuit ou une version licence commerciale. IronXL fait partie de IronSuitequi se compose de cinq bibliothèques :

  4. IronXLqui fait l'objet d'une étude aujourd'hui.
  5. IronPDF pour générer, lire et manipuler des fichiers PDF
  6. IronOCR pour l'extraction de texte à partir d'images
  7. IronBarcode pour la lecture et la génération de codes à barres
  8. IronWebscraper pour extraire les données structurelles des sites web.

    Vous pouvez obtenir tous ces produits pour le prix de deux s'ils sont achetés ensemble.

< PRÉCÉDENT
Comment importer un fichier Excel en C#
SUIVANT >
Comment écrire dans un fichier Excel en VB.NET