UTILISATION D'IRONXL

Lire un fichier CSV à l'aide de C# (Tutoriel d'exemple de code)

Mise à jour janvier 29, 2024
Partager:

Ce tutoriel montre comment lire un fichier CSV à l'aide de la bibliothèque IronXL C# sans installer d'interopérabilité supplémentaire, de manière très efficace.

Comment lire des fichiers CSV en C# ;

Vous devez d'abord installer IronXL avant de l'utiliser pour lire des fichiers CSV dans MVC, ASP.NET ou .NET Core. Voici un aperçu de la procédure.

Sélectionnez le menu Projet dans Visual Studio, Gérer les paquets NuGet, et recherchez IronXL.Excel, et installez.

Lire un fichier CSV à l'aide de C# (Exemple de code Tutoriel), Figure 1 : Installer le package IronXL dans le NuGet Package Manager Installer le paquet IronXL dans le gestionnaire de paquets NuGet

IronXL est un excellent outil à utiliser lorsque vous devez lire les fichiers CSV en C#. L'exemple de code ci-dessous montre que vous pouvez lire un fichier CSV en utilisant des virgules ou un autre délimiteur.

WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("Csv_To_Excel.xlsx");
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("Csv_To_Excel.xlsx");
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
Dim ws As WorkSheet = workbook.DefaultWorkSheet
workbook.SaveAs("Csv_To_Excel.xlsx")
VB   C#

Lire un fichier CSV à l'aide de C# (Exemple de code Tutoriel), Figure 2 : Données CSV pour ce tutoriel **Données CSV pour ce tutoriel

L'objet WorkBook (livre de travail) est créé. L'objet WorkBook a une valeur de LoadCSV est ensuite utilisée pour indiquer le nom du fichier CSV, son format et les délimiteurs utilisés dans le fichier CSV lu, qui sont stockés dans un tableau de chaînes. Les virgules sont utilisées comme délimiteurs dans ce scénario.

Ensuite, un Feuille de travail est créé ; c'est l'endroit où le contenu du fichier CSV sera stocké. Le fichier est ensuite renommé et stocké dans un nouveau format. Les données du fichier CSV sont ensuite présentées sous forme de tableau dans la feuille de calcul. Le résultat ressemblera à ceci :

Lire un fichier CSV à l'aide de C# (Exemple de code Tutoriel), Figure 3 : Données converties en fichier Excel Données converties en fichier Excel

Analyse CSV dans C&num ; .NET

Les CSV présentent plusieurs problèmes liés à la gestion des sauts de ligne dans les champs, et à la façon dont les champs peuvent être placés entre guillemets, ce qui empêche une simple technique de séparation de chaînes de fonctionner Split("'"). Au lieu de cela, IronXL propose de personnaliser le délimiteur en utilisant un paramètre optionnel de la méthode LoadCSV, vérifiez la documentation API de LoadCSV pour plus de détails.

C&num ; Enregistrements - Lecture de données CSV

Dans l'exemple ci-dessous, le foreach est utilisé pour parcourir en boucle les lignes du fichier CSV, et la Console est utilisée pour écrire les données dans un enregistrement.

WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
DataTable dt = ws.ToDataTable(true);//parse sheet1 of sample.xlsx file into datatable
foreach (DataRow row in dt.Rows) //access rows
{
    for (int i = 0; i < dt.Columns.Count; i++) //access columns of corresponding row
    {
        Console.Write(row [i] + "  ");
    }
    Console.WriteLine();
}
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
DataTable dt = ws.ToDataTable(true);//parse sheet1 of sample.xlsx file into datatable
foreach (DataRow row in dt.Rows) //access rows
{
    for (int i = 0; i < dt.Columns.Count; i++) //access columns of corresponding row
    {
        Console.Write(row [i] + "  ");
    }
    Console.WriteLine();
}
Dim workbook As WorkBook = WorkBook.LoadCSV("Weather.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
Dim ws As WorkSheet = workbook.DefaultWorkSheet
Dim dt As DataTable = ws.ToDataTable(True) 'parse sheet1 of sample.xlsx file into datatable
For Each row As DataRow In dt.Rows 'access rows
	For i As Integer = 0 To dt.Columns.Count - 1 'access columns of corresponding row
		Console.Write(row (i) & "  ")
	Next i
	Console.WriteLine()
Next row
VB   C#

Lire un fichier CSV à l'aide de C# (Exemple de code Tutoriel), Figure 4 : Accéder aux données d'un fichier CSV et les afficher dans la console Accéder aux données d'un fichier CSV et les afficher dans la console

Conversion d'un fichier CSV au format Excel

La procédure est simple : chargement d'un fichier CSV et enregistrement dans un fichier Excel.

WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("CsvToExcelConversion.xlsx");
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
WorkSheet ws = workbook.DefaultWorkSheet;
workbook.SaveAs("CsvToExcelConversion.xlsx");
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Lire et manipuler des fichiers CSV convertis à l'aide d'IronXL

La classe IronXL WorkBook représente une feuille Excel et utilise cette classe pour ouvrir un fichier Excel en C#. Les exemples de code ci-dessous chargeront le fichier Excel souhaité dans un objet WorkBook :

//Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");
//Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");
'Load WorkBook
Dim workbook = WorkBook.Load("Spreadsheets\\sample.xlsx")
VB   C#

les objets WorkSheet se retrouvent dans de nombreux WorkBooks. Il s'agit des feuilles de calcul du document Excel. Si le classeur contient des feuilles de travail, vous pouvez les obtenir par leur nom en procédant comme suit :

//Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");
//Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");
'Open Sheet for reading
Dim worksheet = workbook.GetWorkSheet("sheetnamegoeshere")
VB   C#

Code pour la lecture des valeurs des cellules :

// Read from Ranges of cells elegantly.
foreach (var cell in worksheet ["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Read from Ranges of cells elegantly.
foreach (var cell in worksheet ["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
' Read from Ranges of cells elegantly.
For Each cell In worksheet ("A2:A10")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
VB   C#

L'exemple de code suivant permet de mettre à jour les formules ou de les appliquer à des cellules spécifiques après le chargement et la lecture du classeur et de la feuille de calcul. Le code est le suivant :

// Set Formulas
worksheet ["A1"].Formula = "Sum(B8:C12)";
worksheet ["B8"].Formula = "=C9/C11";
worksheet ["G30"].Formula = "Max(C3:C7)";
// Force recalculate all formula values in all sheets.  
workbook.EvaluateAll();
// Set Formulas
worksheet ["A1"].Formula = "Sum(B8:C12)";
worksheet ["B8"].Formula = "=C9/C11";
worksheet ["G30"].Formula = "Max(C3:C7)";
// Force recalculate all formula values in all sheets.  
workbook.EvaluateAll();
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Conclusion et offre spéciale IronXL

IronXL transforme les CSV en Excel avec seulement deux lignes de code, en plus du traitement des CSV en C#.

Sans interopérabilité, l'utilisation de l'API Excel d'IronXL est un jeu d'enfant. En outre, IronXL offre également un large éventail de fonctions permettant d'interagir avec le livre de travail Excel, la feuille de travail et le niveau des cellules, telles que la conversion entre les formats les plus courants, formatage des données des cellules, fusion de cellules, insertion de fonctions mathématiqueset même de gérer des graphiques et des ajout d'images.

Vous pouvez lancer l'application sans filigrane en utilisant Clés de licence d'essai IronXL.

Les licences commencent à $749 et incluent un an de support et de mises à jour gratuits.

IronPDF, IronXL, IronOCR, IronBarcode, et IronWebscraper font tous partie de la suite Iron Software. Iron Software vous permet d'acheter l'ensemble de ses outils à un prix réduit. Vous pouvez utiliser tous ces outils pour le prix de deux.

C'est une option qui mérite d'être explorée.

< PRÉCÉDENT
Comment utiliser un analyseur CSV en C#
SUIVANT >
C# Ouvrir un fichier Excel par programme (Tutoriel d'exemple de code)