Test dans un environnement réel
Test en production sans filigrane.
Fonctionne partout où vous en avez besoin.
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 est uneIron 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.
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.
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.
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.
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.
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.
une nouvelle application console dans Visual Studio
Installez maintenant le paquet NuGet IronXL pour l'utiliser dans cette application.
Ouvrez la console du gestionnaire de paquets NuGet et entrez la commande suivante.
Install-Package IronXL.Excel
LesPaquet NuGet sera installé et prêt à l'emploi comme indiqué ci-dessous.
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.
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 :
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"); //
}
Public Shared Function getData() As DataTable
Dim connString As String = "server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;"
Dim query As String = "select * from STUDENT_DATA"
Try
Dim conn As New SqlConnection(connString)
Dim cmd As New SqlCommand(query, conn)
conn.Open()
' create data adapter
Dim da As New SqlDataAdapter(cmd)
' this will query your database and return the result to your datatable
Dim dt As New DataTable()
da.Fill(dt)
da.Dispose()
Return dt
Catch e1 As Exception
Throw
End Try
End Function
Shared Sub Main(ByVal args() As String)
Dim table As DataTable = getData()
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "JOHN"
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1
For Each row As DataRow 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 += 1
Next row
wb.SaveAsCsv("D:\Tutorial Project\Save_DataTable_CSV.csv")
End Sub
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 unWorkBook
(livre de travail) à l'aide d'IronXL, puis de créer uneFeuille 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 fonctionSaveAsCsv
(enregistrer sous forme de fichier) fournie par IronXL.
Le fichier CSV généré par ce programme est le suivant :
**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.
Cet article a montré comment créer un fichier CSV en C# à partir d'un ensemble de données. La bibliothèque peut égalementlire 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 :
Obtenir des données du serveur SQL.
Introduire des données dans un tableau de données.
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 sitedocumentation officielle.
En outre, IronPDF offre aux développeurs des méthodes pourtransformer des documents PDF en images etextraire du texte et du contenu à partir d'un PDF. En outre, IronPDF est également capable degraphiques 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 unessai gratuit ou une versionlicence commerciale. IronXL fait partie deIronSuitequi se compose de cinq bibliothèques :
IronXLqui fait l'objet d'une étude aujourd'hui.
IronPDF pour générer, lire et manipuler des fichiers PDF
IronOCR pour l'extraction de texte à partir d'images
IronBarcode pour la lecture et la génération de codes à barres
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.
9 produits de l'API .NET pour vos documents de bureau