Passer au contenu du pied de page
UTILISATION D'IRONXL

Comment lire un fichier CSV dans une DataTable en C#

La conversion de fichiers CSV en DataTable en C# est simple avec IronXL : utilisez WorkBook.LoadCSV() pour lire n'importe quel fichier CSV, puis appelez ToDataTable(true) pour créer un DataTable structuré avec des en-têtes de colonne appropriés, prêt pour l'importation dans une base de données ou la manipulation de données.

Travailler avec des fichiers CSV est une tâche courante pour les développeurs .NET , qu'il s'agisse d'importer des rapports de vente, de traiter les stocks ou de synchroniser les dossiers clients. La conversion d'un fichier CSV en DataTable facilite la manipulation, l'analyse ou l'insertion dans une table de base de données. La bibliothèque IronXL offre une solution complète pour gérer les opérations Excel et CSV dans les applications C# — aucune installation d'Excel n'est requise.

La lecture de fichiers CSV en C# peut s'avérer complexe. Les fichiers volumineux, les délimiteurs différents ou les virgules imbriquées nécessitent souvent une logique d'analyse complexe. IronXL simplifie tout cela : avec seulement quelques lignes de code, vous pouvez lire des fichiers CSV à partir de n'importe quel chemin de fichier, les convertir en un DataTable avec des en-têtes de colonne appropriés, et les préparer pour des opérations de base de données en vrac. Cette approche est particulièrement utile lorsque l'on travaille avec des données Excel en C#.

Dans ce guide, vous apprendrez comment :

  • Chargez un fichier CSV dans un DataTable en C# en utilisant les capacités de lecture CSV d'IronXL
  • Gérer différents délimiteurs tels que les virgules, les tabulations ou les points-virgules
  • Importez votre DataTable directement dans SQL Server de manière efficace à l'aide de la fonctionnalité d'exportation
  • Gérez de grands ensembles de données en toute fiabilité sans rencontrer de problèmes de mémoire

À la fin de cet article, vous disposerez d'un flux de travail complet et pratique pour transformer des données CSV en informations exploitables grâce à IronXL dans vos applications .NET 10.


Pourquoi la conversion de CSV en DataTable est-elle importante ?

La conversion CSV en DataTable permet aux développeurs de transformer des valeurs séparées par des virgules en objets structurés en vue d'un traitement ultérieur. Que vous traitiez des données d'inventaire, des dossiers clients ou des journaux de transactions, il est essentiel de convertir efficacement le CSV en DataTable. En utilisant la première ligne comme en-tête de colonne, vous pouvez vous assurer que les colonnes de DataTable s'alignent sur le schéma de votre table de base de données, ce qui est parfait pour les opérations Excel to DataSet.

Les approches traditionnelles rencontrent souvent des difficultés avec les fichiers volumineux, les différents délimiteurs ou la gestion de la mémoire. IronXL élimine ces difficultés et gère différents délimiteurs, les champs entre guillemets et les virgules imbriquées sans code supplémentaire. Les capacités de lecture de fichiers CSV d'IronXL éliminent les difficultés courantes tout en offrant des fonctionnalités supplémentaires telles que la validation des données et le contrôle de la taille des fichiers.

Quand utiliser DataTable plutôt que d'autres structures de données ?

DataTables fonctionnent bien lorsque vous avez besoin d'opérations de type base de données en mémoire. Ils sont idéaux pour les scénarios impliquant des importations SQL Server, la liaison de données à des contrôles d'interface utilisateur ou lorsque vous devez effectuer des requêtes LINQ sur des données structurées. Contrairement aux simples tableaux ou listes, DataTables offrent une validation de schéma, des relations entre les tables et une intégration directe avec ADO.NET. Pour des scénarios plus complexes, vous pouvez également convertir entre DataSet et DataTable si nécessaire.

Quels sont les problèmes courants liés à l'analyse traditionnelle des fichiers CSV ?

L'analyse manuelle des fichiers CSV échoue souvent dans des cas particuliers : virgules imbriquées dans des champs entre guillemets, sauts de ligne dans les valeurs des cellules ou utilisation incohérente des délimiteurs. La consommation de mémoire devient problématique avec les fichiers volumineux lorsqu'il faut tout charger en mémoire en même temps. Les problèmes d'encodage des caractères peuvent corrompre les données internationales, tandis que l'inférence de type interprète souvent à tort les chaînes numériques comme des nombres. C'est pour ces raisons qu'une bibliothèque d'analyse syntaxique structurée comme IronXL est devenue essentielle pour les applications de production.

Comment éviter les problèmes de mémoire avec les fichiers CSV volumineux ?

IronXL met en œuvre des techniques de lecture tamponnée pour gérer efficacement les fichiers CSV volumineux. Au lieu de charger des fichiers entiers en mémoire en une seule fois, il traite les données par blocs, ce qui permet de maintenir une faible empreinte mémoire même avec des fichiers volumineux. Cela la rend adaptée aux environnements serveur aux ressources limitées, y compris les déploiements cloud où l'allocation de mémoire est restreinte.


Comment installer IronXL?

Pour commencer avec IronXL, il suffit d'installer un simple package NuGet . Ouvrez la console du gestionnaire de packages NuGet dans Visual Studio et exécutez :

Install-Package IronXL
Install-Package IronXL
SHELL

Ou si vous préférez l'interface de ligne de commande .NET :

dotnet add package IronXL
dotnet add package IronXL
SHELL

Une fois installé, ajoutez l'espace de noms IronXL à votre projet :

using IronXL;
using System.Data;
using IronXL;
using System.Data;
Imports IronXL
Imports System.Data
$vbLabelText   $csharpLabel

Cela permet d'accéder à toutes les fonctionnalités de traitement CSV sans aucune dépendance à Excel. Pour plus de détails, consultez la documentation IronXL et le guide d'installation NuGet.

Quelles sont les configurations système requises pour IronXL?

IronXL prend en charge .NET Framework 4.6.2+ et .NET Core/5/6/7/8/9/10, ce qui le rend compatible avec les applications modernes et anciennes. Il fonctionne sur les plateformes Windows, Linux et macOS. Pour les environnements présentant des exigences particulières, consultez la page des fonctionnalités IronXL afin de vérifier la compatibilité de la plateforme. Une licence d'essai est disponible pour évaluer l'ensemble des fonctionnalités avant l'achat.

Comment vérifier que l'installation a réussi ?

Créez un programme de test qui charge un fichier CSV pour vérifier l'installation. Si vous rencontrez des messages relatifs à la licence, vous devrez obtenir une clé de licence. Vérifiez les références des packages dans votre fichier de projet pour vous assurer IronXL apparaît avec la version correcte. Exécutez une opération de lecture CSV de base — si elle s'effectue sans erreur, votre installation fonctionne correctement.


Comment convertir un fichier CSV en DataTable?

Le flux de travail principal d' IronXL ne nécessite que quelques lignes de code. Voici comment lire un fichier CSV et le convertir en DataTable à l'aide d'instructions de premier niveau en C# 10+ :

using IronXL;
using System.Data;

// Load CSV file into a WorkBook object
WorkBook workbook = WorkBook.LoadCSV("sales_data.csv",
    fileFormat: ExcelFileFormat.XLSX);

// Access the default worksheet
WorkSheet worksheet = workbook.DefaultWorkSheet;

// Convert to DataTable with headers
DataTable dataTable = worksheet.ToDataTable(true);

// Display the data
foreach (DataRow row in dataTable.Rows)
{
    foreach (var item in row.ItemArray)
    {
        Console.Write($"{item}\t");
    }
    Console.WriteLine();
}
using IronXL;
using System.Data;

// Load CSV file into a WorkBook object
WorkBook workbook = WorkBook.LoadCSV("sales_data.csv",
    fileFormat: ExcelFileFormat.XLSX);

// Access the default worksheet
WorkSheet worksheet = workbook.DefaultWorkSheet;

// Convert to DataTable with headers
DataTable dataTable = worksheet.ToDataTable(true);

// Display the data
foreach (DataRow row in dataTable.Rows)
{
    foreach (var item in row.ItemArray)
    {
        Console.Write($"{item}\t");
    }
    Console.WriteLine();
}
Imports IronXL
Imports System.Data

' Load CSV file into a WorkBook object
Dim workbook As WorkBook = WorkBook.LoadCSV("sales_data.csv", fileFormat:=ExcelFileFormat.XLSX)

' Access the default worksheet
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet

' Convert to DataTable with headers
Dim dataTable As DataTable = worksheet.ToDataTable(True)

' Display the data
For Each row As DataRow In dataTable.Rows
    For Each item In row.ItemArray
        Console.Write($"{item}" & vbTab)
    Next
    Console.WriteLine()
Next
$vbLabelText   $csharpLabel

La méthode LoadCSV analyse automatiquement votre fichier CSV, en gérant les champs entre guillemets et les virgules intégrées. Le paramètre fileFormat indique à IronXL comment interpréter les données CSV en interne, en veillant à ce qu'elles soient traitées comme une structure compatible avec Excel. Une fois chargée, la méthode ToDataTable(true) convertit la feuille de calcul en DataTable, le paramètre true indiquant que la première ligne doit être utilisée comme en-tête de colonne. Il en résulte un fichier propre et structuré DataTable avec des colonnes nommées qui correspondent à vos en-têtes CSV. Pour des options de manipulation plus avancées, consultez le guide pratique complet d'IronXL.

Le processus de conversion préserve également les types de données : les nombres restent numériques, les dates sont analysées correctement et les champs de texte conservent leur mise en forme. Cette inférence automatique de type permet de gagner un temps de développement considérable par rapport aux approches d'analyse syntaxique manuelle. Pour les cas nécessitant un formatage personnalisé des données, vous pouvez appliquer un formatage de cellule avant la conversion.

Qu'est-ce que le paramètre ToDataTable contrôle ?

Le paramètre booléen dans ToDataTable() détermine la gestion des lignes d'en-tête. Lorsqu'elle est définie sur true, la première ligne devient un nom de colonne dans votre DataTable, créant ainsi des références de champ significatives comme CustomerName au lieu de Column1. Lorsque false, des noms de colonnes génériques sont attribués, ce qui est utile pour les fichiers CSV sans en-tête. Cette flexibilité permet de prendre en charge différents formats CSV rencontrés dans les applications réelles. Dans certains cas complexes, il peut être nécessaire d'ouvrir des classeurs avec des options personnalisées pour gérer plusieurs plages de données.

Comment gérer les fichiers CSV sans en-têtes ?

Pour les fichiers CSV sans en-tête, utilisez ToDataTable(false) et attribuez manuellement les noms de colonnes par la suite. Vous pouvez parcourir la collection Columns et définir des noms significatifs en fonction de votre schéma de données. Vous pouvez également ajouter une ligne d'en-tête au début de votre fichier CSV par programmation avant de le charger. IronXL prend également en charge la création de fichiers Excel à partir de zéro si vous avez besoin d'ajouter des en-têtes à des données existantes.

Quelles sont les conséquences des fichiers CSV volumineux sur les performances ?

IronXL traite efficacement les fichiers CSV volumineux grâce à des techniques de mise en mémoire tampon. Les fichiers de moins de 100 Mo se chargent généralement en quelques secondes. Grâce à une mise en mémoire tampon intelligente, l'utilisation de la mémoire reste maîtrisée quelle que soit la taille du fichier. Pour des performances optimales avec des ensembles de données massifs, envisagez un traitement par lots utilisant des techniques de sélection par plage. La page de caractéristiques de IronXL documente en détail ses performances.


Comment importer un DataTable dans SQL Server?

Une fois que vous avez votre DataTable, l'importation dans SQL Server devient efficace grâce au SqlBulkCopy. L'exemple suivant utilise des instructions de niveau supérieur C# :

using System.Data;
using Microsoft.Data.SqlClient;
using IronXL;

// Create connection string
string connectionString = "Data Source=localhost;Initial Catalog=SalesDB;" +
    "Integrated Security=True;TrustServerCertificate=True;";

// Read CSV into DataTable
WorkBook workbook = WorkBook.LoadCSV("inventory_report.csv");
DataTable dataTable = workbook.DefaultWorkSheet.ToDataTable(true);

// Bulk insert into SQL Server
using SqlConnection connection = new SqlConnection(connectionString);
connection.Open();

using SqlBulkCopy bulkCopy = new SqlBulkCopy(connection);

// Set destination table name
bulkCopy.DestinationTableName = "dbo.Inventory";

// Map DataTable columns to SQL table columns
bulkCopy.ColumnMappings.Add("ProductCode", "product_code");
bulkCopy.ColumnMappings.Add("Quantity", "quantity");
bulkCopy.ColumnMappings.Add("LastUpdated", "last_updated");

// Set batch size for better performance
bulkCopy.BatchSize = 1000;

// Write data to SQL Server
bulkCopy.WriteToServer(dataTable);

Console.WriteLine($"Successfully imported {dataTable.Rows.Count} records");
using System.Data;
using Microsoft.Data.SqlClient;
using IronXL;

// Create connection string
string connectionString = "Data Source=localhost;Initial Catalog=SalesDB;" +
    "Integrated Security=True;TrustServerCertificate=True;";

// Read CSV into DataTable
WorkBook workbook = WorkBook.LoadCSV("inventory_report.csv");
DataTable dataTable = workbook.DefaultWorkSheet.ToDataTable(true);

// Bulk insert into SQL Server
using SqlConnection connection = new SqlConnection(connectionString);
connection.Open();

using SqlBulkCopy bulkCopy = new SqlBulkCopy(connection);

// Set destination table name
bulkCopy.DestinationTableName = "dbo.Inventory";

// Map DataTable columns to SQL table columns
bulkCopy.ColumnMappings.Add("ProductCode", "product_code");
bulkCopy.ColumnMappings.Add("Quantity", "quantity");
bulkCopy.ColumnMappings.Add("LastUpdated", "last_updated");

// Set batch size for better performance
bulkCopy.BatchSize = 1000;

// Write data to SQL Server
bulkCopy.WriteToServer(dataTable);

Console.WriteLine($"Successfully imported {dataTable.Rows.Count} records");
Imports System.Data
Imports Microsoft.Data.SqlClient
Imports IronXL

' Create connection string
Dim connectionString As String = "Data Source=localhost;Initial Catalog=SalesDB;" &
    "Integrated Security=True;TrustServerCertificate=True;"

' Read CSV into DataTable
Dim workbook As WorkBook = WorkBook.LoadCSV("inventory_report.csv")
Dim dataTable As DataTable = workbook.DefaultWorkSheet.ToDataTable(True)

' Bulk insert into SQL Server
Using connection As New SqlConnection(connectionString)
    connection.Open()

    Using bulkCopy As New SqlBulkCopy(connection)
        ' Set destination table name
        bulkCopy.DestinationTableName = "dbo.Inventory"

        ' Map DataTable columns to SQL table columns
        bulkCopy.ColumnMappings.Add("ProductCode", "product_code")
        bulkCopy.ColumnMappings.Add("Quantity", "quantity")
        bulkCopy.ColumnMappings.Add("LastUpdated", "last_updated")

        ' Set batch size for better performance
        bulkCopy.BatchSize = 1000

        ' Write data to SQL Server
        bulkCopy.WriteToServer(dataTable)
    End Using
End Using

Console.WriteLine($"Successfully imported {dataTable.Rows.Count} records")
$vbLabelText   $csharpLabel

La classe SqlBulkCopy offre de bonnes performances pour les importations de données à grande échelle. La collection ColumnMappings fait correspondre les colonnes DataTable à des colonnes de base de données portant des noms différents, ce qui garantit la flexibilité de votre schéma de données. La propriété BatchSize optimise l'utilisation de la mémoire en traitant les enregistrements par morceaux au lieu de tout charger en même temps. En savoir plus sur les fonctionnalités d'importation et d'exportation d'IronXL.

Pour une intégrité des données accrue, envisagez la mise en œuvre d'une prise en charge des transactions pour vos opérations de copie en masse. Cela permet d'annuler les importations partielles en cas d'erreur. Vous pouvez également utiliser les fonctionnalités d'écriture de fichiers Excel d'IronXL pour pré-valider les données avant leur importation.

Pourquoi BatchSize est-il important pour les performances ?

BatchSize contrôle le nombre de lignes envoyées au serveur SQL lors de chaque aller-retour sur le réseau. Des lots plus petits (100-1000 lignes) réduisent l'utilisation de la mémoire et permettent de suivre la progression, mais augmentent la surcharge du réseau. Les lots plus volumineux (5 000 à 10 000 lignes) optimisent le débit sur les réseaux rapides, mais consomment davantage de mémoire. La taille optimale dépend de la largeur de vos lignes, de la latence du réseau et de la mémoire disponible.

Comment gérez-vous les incohérences de mappage des colonnes ?

Les incohérences de mappage des colonnes provoquent des exceptions d'exécution lors des opérations de copie en masse. Vérifiez toujours que les noms de colonnes DataTable source correspondent exactement à vos définitions de mappage, y compris la sensibilité à la casse. Utilisez la méthode GetOrdinal pour valider l'existence de la colonne avant de la mapper. Pour les schémas dynamiques, interrogez la structure de la table de destination et créez les mappages par programmation. Le guide Excel to DataSet d'IronXL peut aider à normaliser les noms de colonnes avant l'importation.

Quelles sont les considérations de sécurité applicables aux importations en vrac ?

Les importations en masse nécessitent des autorisations de base de données élevées, généralement des rôles db_datawriter ou bulkadmin. Utilisez l'authentification intégrée lorsque cela est possible afin d'éviter d'inclure les informations d'identification dans les chaînes de connexion. Mettez en œuvre une sécurité au niveau des lignes en ajoutant des colonnes d'audit lors de l'importation. Vérifiez toujours les types et les plages de données afin d'éviter les problèmes liés à des données CSV malformées. Consultez la page relative aux licences IronXL si vous souhaitez comprendre les exigences de déploiement en Enterprise .


Comment gérer les différents délimiteurs CSV ?

Tous les fichiers CSV n'utilisent pas de virgules. IronXL prend en charge divers délimiteurs, ce qui le rend pratique pour les formats de données internationaux ou les systèmes hérités :

using IronXL;
using System;
using System.Data;
using System.IO;

// --- Tab-delimited file ---
string tsvPath = "export_data.tsv";
WorkBook tsvWorkbook = WorkBook.LoadCSV(tsvPath, ExcelFileFormat.XLSX, "\t");

// --- Semicolon-delimited file ---
string semiPath = "european_data.csv";
string tempCsv = Path.Combine(Path.GetTempPath(), "european_data_comma.csv");

// Replace semicolons with commas for proper parsing
string[] lines = File.ReadAllLines(semiPath);
for (int i = 0; i < lines.Length; i++)
{
    lines[i] = lines[i].Replace(';', ',');
}
File.WriteAllLines(tempCsv, lines);

WorkBook semiWorkbook = WorkBook.LoadCSV(tempCsv, ExcelFileFormat.XLSX);

// Print tab-delimited results
DataTable tsvTable = tsvWorkbook.DefaultWorkSheet.ToDataTable(true);
Console.WriteLine("--- Tab-delimited File ---");
foreach (DataColumn col in tsvTable.Columns)
    Console.Write($"{col.ColumnName}\t");
Console.WriteLine();
foreach (DataRow row in tsvTable.Rows)
{
    foreach (var item in row.ItemArray)
        Console.Write($"{item}\t");
    Console.WriteLine();
}

// Print semicolon-delimited results
DataTable semiTable = semiWorkbook.DefaultWorkSheet.ToDataTable(true);
Console.WriteLine("\n--- Semicolon-delimited File ---");
foreach (DataColumn col in semiTable.Columns)
    Console.Write($"{col.ColumnName}\t");
Console.WriteLine();
foreach (DataRow row in semiTable.Rows)
{
    foreach (var item in row.ItemArray)
        Console.Write($"{item}\t");
    Console.WriteLine();
}
using IronXL;
using System;
using System.Data;
using System.IO;

// --- Tab-delimited file ---
string tsvPath = "export_data.tsv";
WorkBook tsvWorkbook = WorkBook.LoadCSV(tsvPath, ExcelFileFormat.XLSX, "\t");

// --- Semicolon-delimited file ---
string semiPath = "european_data.csv";
string tempCsv = Path.Combine(Path.GetTempPath(), "european_data_comma.csv");

// Replace semicolons with commas for proper parsing
string[] lines = File.ReadAllLines(semiPath);
for (int i = 0; i < lines.Length; i++)
{
    lines[i] = lines[i].Replace(';', ',');
}
File.WriteAllLines(tempCsv, lines);

WorkBook semiWorkbook = WorkBook.LoadCSV(tempCsv, ExcelFileFormat.XLSX);

// Print tab-delimited results
DataTable tsvTable = tsvWorkbook.DefaultWorkSheet.ToDataTable(true);
Console.WriteLine("--- Tab-delimited File ---");
foreach (DataColumn col in tsvTable.Columns)
    Console.Write($"{col.ColumnName}\t");
Console.WriteLine();
foreach (DataRow row in tsvTable.Rows)
{
    foreach (var item in row.ItemArray)
        Console.Write($"{item}\t");
    Console.WriteLine();
}

// Print semicolon-delimited results
DataTable semiTable = semiWorkbook.DefaultWorkSheet.ToDataTable(true);
Console.WriteLine("\n--- Semicolon-delimited File ---");
foreach (DataColumn col in semiTable.Columns)
    Console.Write($"{col.ColumnName}\t");
Console.WriteLine();
foreach (DataRow row in semiTable.Rows)
{
    foreach (var item in row.ItemArray)
        Console.Write($"{item}\t");
    Console.WriteLine();
}
Imports IronXL
Imports System
Imports System.Data
Imports System.IO

' --- Tab-delimited file ---
Dim tsvPath As String = "export_data.tsv"
Dim tsvWorkbook As WorkBook = WorkBook.LoadCSV(tsvPath, ExcelFileFormat.XLSX, ControlChars.Tab)

' --- Semicolon-delimited file ---
Dim semiPath As String = "european_data.csv"
Dim tempCsv As String = Path.Combine(Path.GetTempPath(), "european_data_comma.csv")

' Replace semicolons with commas for proper parsing
Dim lines As String() = File.ReadAllLines(semiPath)
For i As Integer = 0 To lines.Length - 1
    lines(i) = lines(i).Replace(";"c, ","c)
Next
File.WriteAllLines(tempCsv, lines)

Dim semiWorkbook As WorkBook = WorkBook.LoadCSV(tempCsv, ExcelFileFormat.XLSX)

' Print tab-delimited results
Dim tsvTable As DataTable = tsvWorkbook.DefaultWorkSheet.ToDataTable(True)
Console.WriteLine("--- Tab-delimited File ---")
For Each col As DataColumn In tsvTable.Columns
    Console.Write($"{col.ColumnName}{ControlChars.Tab}")
Next
Console.WriteLine()
For Each row As DataRow In tsvTable.Rows
    For Each item In row.ItemArray
        Console.Write($"{item}{ControlChars.Tab}")
    Next
    Console.WriteLine()
Next

' Print semicolon-delimited results
Dim semiTable As DataTable = semiWorkbook.DefaultWorkSheet.ToDataTable(True)
Console.WriteLine(vbCrLf & "--- Semicolon-delimited File ---")
For Each col As DataColumn In semiTable.Columns
    Console.Write($"{col.ColumnName}{ControlChars.Tab}")
Next
Console.WriteLine()
For Each row As DataRow In semiTable.Rows
    For Each item In row.ItemArray
        Console.Write($"{item}{ControlChars.Tab}")
    Next
    Console.WriteLine()
Next
$vbLabelText   $csharpLabel

Ce code démontre le chargement de fichiers CSV avec différents délimiteurs dans des objets IronXL WorkBook. Les fichiers délimités par des tabulations sont lus en utilisant "\t" comme séparateur, tandis que les fichiers délimités par des points-virgules sont convertis au format CSV standard avant d'être chargés. Pour des cas de figure plus complexes en matière de formats de fichiers, vous pouvez également envisager d'exporter des données Excel vers divers formats.

Quels délimiteurs IronXL prend-il en charge nativement ?

IronXL prend en charge les délimiteurs courants, notamment les virgules, les tabulations et les barres verticales (|), and custom single-character delimiters through the LoadCSV overload. Pour des performances optimales, utilisez le paramètre de délimitation intégré plutôt que de prétraiter les fichiers. Les délimiteurs à plusieurs caractères nécessitent un prétraitement, comme le montre l'exemple du point-virgule ci-dessus. Vous pouvez également fusionner des cellules dans le classeur obtenu si vous avez besoin de réorganiser les données analysées.

Comment détecter automatiquement le délimiteur ?

La détection automatique des délimiteurs consiste à analyser les premières lignes de votre fichier CSV. Comptez les occurrences des délimiteurs courants (virgule, tabulation, point-virgule, barre verticale) sur chaque ligne. Le caractère apparaissant le plus fréquemment est probablement le délimiteur. IronXL ne fournit pas de détection automatique, mais vous pouvez mettre en œuvre cette logique avant d'appeler LoadCSV.


Quelles sont les fonctionnalités IronXL prises en charge en plus du format CSV ?

IronXL offre bien plus que la simple lecture de fichiers CSV. Cette bibliothèque gère l'ensemble des opérations Excel et tableur en C#, ce qui en fait une dépendance unique pour les applications axées sur les données.

Fonction Description du projet En savoir plus
Lire des fichiers Excel Chargez des fichiers .xlsx, .xls, .csv et accédez aux données des cellules par programmation Lire Excel
Créer des fichiers Excel Créer et modifier des feuilles de calcul, définir des valeurs, des formules et des styles Écrire Excel
Créer des fichiers Excel Générer de nouveaux classeurs et feuilles de calcul à partir du code Créer un fichier Excel
Exporter vers un DataSet Convertir des classeurs entiers en objets DataSet pour les scénarios multi-tables Excel vers DataSet
Mise en forme des cellules Appliquer des formats de nombre, des polices, des couleurs et des bordures aux cellules Mise en forme des cellules
Importer des données Remplir des feuilles de calcul à partir de DataTable, de listes ou de sources de données Importer des données

Comment exporter un classeur entier sous forme d'ensemble de données ?

Lorsque votre fichier CSV contient plusieurs sections ou que vous devez travailler avec plusieurs feuilles, utilisez la méthode ToDataSet() sur l'objet WorkBook. Ceci renvoie un DataSet contenant un DataTable par feuille de calcul. Le guide pratique " Excel to DataSet " fournit des exemples de code étape par étape pour ce scénario.

Quelles sont les options de licence disponibles ?

IronXL est disponible pour un usage commercial avec différents niveaux de licence pour s'adapter à la taille de votre équipe et à vos besoins de déploiement. Une licence d'essai gratuite donne accès à l'ensemble des fonctionnalités à des fins d'évaluation. La page relative aux licences détaille les plans disponibles, notamment la redistribution sans redevance et les options SaaS.


Quelles sont les prochaines étapes?

IronXL transforme l'importation de bases de données CSV en un processus simple et fiable. Avec seulement quelques lignes de code, vous pouvez :

  • Lire des fichiers CSV à partir de n'importe quel chemin d'accès à l'aide de la fonctionnalité LoadCSV
  • Convertir des données CSV en un DataTable avec un formatage correct des données
  • Conserver les en-têtes de colonnes et les colonnes DataTable grâce à l'analyse syntaxique automatique
  • Importez efficacement des millions de lignes dans une table de base de données à l'aide d'opérations en masse

La bibliothèque gère les subtilités de l'analyse CSV, de la gestion de la mémoire et des conversions de types de données, vous permettant ainsi de vous concentrer sur votre logique métier plutôt que sur les détails du traitement des fichiers. Que vous développiez des applications ASP.NET, travailliez avec Blazor ou développiez des applications de bureau .NET 10, IronXL offre un traitement CSV cohérent et fiable sur toutes les plateformes.

Prêt à démarrer ? La documentation IronXL couvre chaque fonctionnalité en détail, et une Licence Trial vous permet d'évaluer l'intégralité de la bibliothèque IronXL.

Questions Fréquemment Posées

Quel est le meilleur moyen de lire des fichiers CSV dans une DataTable en C#?

En utilisant IronXL, vous pouvez efficacement lire des fichiers CSV dans une DataTable en C# avec des exemples de code simples fournis dans notre guide du développeur.

Pourquoi devrais-je utiliser IronXL pour la conversion de CSV en DataTable?

IronXL offre une API simple pour analyser des fichiers CSV et les convertir en DataTables, vous permettant de manipuler et d'analyser facilement vos données en C#.

IronXL peut-il gérer de grands fichiers CSV lors de la conversion en DataTables?

Oui, IronXL est conçu pour traiter efficacement de grands fichiers CSV et les convertir en DataTables sans problèmes de performance.

IronXL prend-il en charge la manipulation des données après la conversion d'un CSV en DataTable?

Absolument, une fois que vous avez converti un fichier CSV en DataTable avec IronXL, vous pouvez facilement manipuler et analyser les données selon les besoins.

Comment puis-je importer des données CSV dans une base de données en utilisant IronXL?

Après avoir converti votre fichier CSV en DataTable avec IronXL, vous pouvez insérer les données dans une base de données en utilisant la connectivité standard des bases de données en C#.

IronXL est-il adapté au traitement des fichiers CSV dans les applications d'entreprise?

Oui, IronXL est conçu pour gérer les tâches de traitement de CSV dans les applications d'entreprise, offrant des performances et une fiabilité robustes.

Quels sont les avantages de convertir des fichiers CSV en DataTables en C#?

Convertir des fichiers CSV en DataTables permet une manipulation, une analyse et une intégration plus faciles avec les bases de données, améliorant les capacités de gestion des données de votre application.

IronXL peut-il être utilisé pour d'autres types de fichiers de feuille de calcul en dehors des CSV?

Oui, IronXL prend en charge divers types de fichiers de feuille de calcul, y compris les formats Excel, permettant des capacités polyvalentes de traitement des données en C#.

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

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi