Passer au contenu du pied de page
UTILISATION D'IRONXL

Comment exporter un fichier vers CSV en C#

This article will contrast and compare various methods that .NET technologies can interface programmatically with Microsoft Excel documents using one of the most well-known libraries, IronXL. Moreover, it will create a setting for writing, reading, and exporting Excel spreadsheets to CSV files.

1.1 What is .NET Framework?

Microsoft created the proprietary .NET Framework, a software framework that is mostly compatible with Microsoft Windows. It served as the main Common Language Infrastructure (CLI) implementation until the cross-platform .NET project took its place. It offers language compatibility across several different programming languages and comes with a sizable class library called the Framework Class Library (FCL).

1.2 What is CSV?

A text file format called "comma-separated values" divides values into separate columns using commas. Tabular data is stored in plain text in a CSV format file, where each line typically corresponds to a single data record. In the CSV file, each record has the same number of fields, which are separated by commas.

2.0 IronXL Library Features

Microsoft Excel documents can be read and converted to CSV files using the IronXL for .NET C# Excel library. Without installing Microsoft Office or Microsoft.Office.Interop.Excel, users can utilize IronXL, a stand-alone .NET software library. It is capable of reading several spreadsheet formats.

IronXL's simple C# API makes it easy to read, edit, and produce Excel spreadsheets in a .NET context. IronXL provides complete support for Xamarin, Linux, macOS, Azure, .NET Core, and .NET Framework.

  • IronXL, a C# library compatible with both .NET Core and .NET Framework, is among the best for Excel spreadsheets.
  • IronXL supports almost every .NET Framework, including Web apps, Windows Forms, and Console.
  • IronXL can be used with Linux, macOS, and Windows operating systems.
  • IronXL has quick and easy access to Excel files.
  • IronXL is capable of reading a wide range of Excel file types, including XLSX, CSV, XLS, XLST, TSV, XLSM, and more. The functions for importing, updating, and exporting data tables and datasets are only a few of the library's numerous options.
  • For the Excel spreadsheet, IronXL is capable of producing calculations.
  • IronXL supports numerous data types for Excel columns, including text, integers, dates, currencies, formulae, and percentages.
  • IronXL can handle multiple values in the form of dates, currencies, percentages, text, numbers, formulas, and more Excel column data types.

To know how to export data into Excel refer to this tutorial.

3.0 Creating a New Project in Visual Studio

Open Visual Studio and create a .NET project before using the IronXL library. Visual Studio can be used in any version, though the most recent version is recommended. To keep things simple, this article will be using the Console Application for this example.

How to Export File to CSV in C#, Figure 1: Open Visual Studio, go to File menu and select New Project. From the various .NET project templates choose the Console App. Open Visual Studio, go to "File" menu and select "New Project". From the various .NET project templates choose the "Console App".

Enter the project's location and name after that.

How to Export File to CSV in C#, Figure 2: Create a new project in Visual Studio Create a new project in Visual Studio

The Framework drop-down menu can be used to choose a .NET Framework. .NET Framework 4.7 is selected for this project. Next, click on the Create button.

The program.cs file will open when the application generates the solution, allowing you to enter the code and build/run the program.

How to Export File to CSV in C#, Figure 3: The Program.cs file will open once the Console Application project is successfully created. The Program.cs file will open once the Console Application project is successfully created.

To test the code, the next step is to add the IronXL library.

Install the IronXL library, since it is required for the next fix. To do this, enter the following command into the NuGet Package Manager Console:

Install-Package IronXL -Version 2023.8.29

How to Export File to CSV in C#, Figure 4: Install the IronXL package in the NuGet Package Manager Console Install the IronXL package in the NuGet Package Manager Console

Another option is to use the NuGet Package Manager to look for the package "IronXL", then choose the necessary package to download from this list of all the NuGet packages connected to IronXL.

How to Export File to CSV in C#, Figure 5: Install the IronXL package using the NuGet Package Manager Install the IronXL package using the NuGet Package Manager

4.0 Export to CSV file

IronXL makes it simple and quick to create string arrays to CSV files. Writing CSV files is made simpler as a result. Firstly, include the IronXL namespace, as shown in the code screenshot below. Then, use IronXL's classes and methods in the below code once it has been presented.

How to Export File to CSV in C#, Figure 6: Include the IronXL namespace Include the IronXL namespace

Excel files can be created with IronXL and then turned into workbook objects. This object offers several methods for working with them. The following example of code generates an Excel file by converting an array string into an Excel worksheet.

using IronXL;
using IronXL.Options;
using System;

class Program
{
    static void Main(string[] args)
    {
        // Array of student names
        string[] students = { "AAA", "BBB", "CCC", "DDD", "EEE", "FFF" };

        // Create a new workbook with an Excel file format of XLS
        var workBook = WorkBook.Create(ExcelFileFormat.XLS);

        // Get the default worksheet (where student data will be written)
        var workSheet = workBook.DefaultWorkSheet;

        // Start adding data to worksheet from row 1
        int rowCount = 1;
        foreach (var student in students)
        {
            // Set the value in column A for student ID
            workSheet["A" + rowCount].Value = rowCount.ToString();

            // Set the value in column B for student name
            workSheet["B" + rowCount].Value = student.ToString();
            rowCount++;
        }

        // Save the workbook as a CSV file with a specified delimiter
        workBook.SaveAsCsv("Sample.csv", ";");

        // Alternately, convert the workbook to a stream
        var stream = workBook.ToStream();
    }
}
using IronXL;
using IronXL.Options;
using System;

class Program
{
    static void Main(string[] args)
    {
        // Array of student names
        string[] students = { "AAA", "BBB", "CCC", "DDD", "EEE", "FFF" };

        // Create a new workbook with an Excel file format of XLS
        var workBook = WorkBook.Create(ExcelFileFormat.XLS);

        // Get the default worksheet (where student data will be written)
        var workSheet = workBook.DefaultWorkSheet;

        // Start adding data to worksheet from row 1
        int rowCount = 1;
        foreach (var student in students)
        {
            // Set the value in column A for student ID
            workSheet["A" + rowCount].Value = rowCount.ToString();

            // Set the value in column B for student name
            workSheet["B" + rowCount].Value = student.ToString();
            rowCount++;
        }

        // Save the workbook as a CSV file with a specified delimiter
        workBook.SaveAsCsv("Sample.csv", ";");

        // Alternately, convert the workbook to a stream
        var stream = workBook.ToStream();
    }
}
Imports IronXL
Imports IronXL.Options
Imports System

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Array of student names
		Dim students() As String = { "AAA", "BBB", "CCC", "DDD", "EEE", "FFF" }

		' Create a new workbook with an Excel file format of XLS
		Dim workBook = WorkBook.Create(ExcelFileFormat.XLS)

		' Get the default worksheet (where student data will be written)
		Dim workSheet = workBook.DefaultWorkSheet

		' Start adding data to worksheet from row 1
		Dim rowCount As Integer = 1
		For Each student In students
			' Set the value in column A for student ID
			workSheet("A" & rowCount).Value = rowCount.ToString()

			' Set the value in column B for student name
			workSheet("B" & rowCount).Value = student.ToString()
			rowCount += 1
		Next student

		' Save the workbook as a CSV file with a specified delimiter
		workBook.SaveAsCsv("Sample.csv", ";")

		' Alternately, convert the workbook to a stream
		Dim stream = workBook.ToStream()
	End Sub
End Class
$vbLabelText   $csharpLabel

The aforementioned code example will export an array to an Excel file. Column heads are created once an array has been constructed. The rows are added one at a time when the first column is established. The WorkBook object is created once the data has been added to the array string. You can add data to an Excel sheet using the WorkBook object, and then save it somewhere else. The goal is to create worksheets by creating the WorkSheet object, which can be linked to the workbook object.

Before adding each item to the spreadsheet, a foreach loop is used to read each item from the array string. The data is saved as a CSV file using the SaveAsCsv method when all the data has been entered into the worksheet. Along with the delimiter, the file name and location can also be provided as optional parameters. The library then assists in writing data to a new CSV file. If you want to read CSV files instead of using Microsoft Excel, you can use Notepad. IronXL also supports storing data in multiple file formats, such as XLS, CSV, and XLSX, by using the Save method. Or the workbook can be turned into a stream and then write data into the required location.

OUTPUT CSV File

How to Export File to CSV in C#, Figure 7: The output Excel file The output Excel file

The output of the code sample that was run is seen above. The newly produced Excel sheet in the screenshot has each item of data from the string array added independently.

To know more about how to export data into CSV using IronXL, please refer to this step-by-step tutorial.

5.0 Conclusion

One of the most popular Excel add-ons is IronXL. It doesn't rely on any other outside libraries. It is self-contained and does not require the installation of Microsoft Excel. It operates via several channels.

IronXL provides a complete solution for all programmatically executed Microsoft Excel document-related tasks. It is possible to perform calculations, sort strings or numbers, trim, add, locate and replace, merge and unmerge, save files, and more. You can define cell data types in addition to checking spreadsheet data. It lets you read and write files and makes dealing with Excel data easier.

IronXL offers a free trial license, which gives users a chance to try all its key features for free.

IronXL is available for $799 at launch. If users would like updates and help with the software, they can also choose to pay a one-year subscription charge. For an additional fee, IronXL offers protection for unlimited redistribution. To find more accurate pricing information, please visit IronXL's license page.

Questions Fréquemment Posées

Comment puis-je exporter des données Excel au format CSV en C# par programmation ?

Pour exporter des données Excel au format CSV en C# par programmation, vous pouvez utiliser IronXL. Tout d'abord, créez un classeur et une feuille de calcul dans votre programme C#, remplissez-la de données, puis utilisez la méthode SaveAsCsv pour exporter les données sous forme de fichier CSV.

Est-il nécessaire d'avoir Microsoft Excel installé pour exporter au format CSV en utilisant C# ?

Non, il n'est pas nécessaire d'avoir Microsoft Excel installé. IronXL est une bibliothèque .NET autonome qui vous permet de lire, éditer et exporter des fichiers Excel au format CSV sans avoir besoin de Microsoft Office ou Microsoft.Office.Interop.Excel.

Comment installer IronXL dans un projet Visual Studio ?

Vous pouvez installer IronXL dans un projet Visual Studio en utilisant la console du gestionnaire de packages NuGet. Exécutez la commande Install-Package IronXL -Version 2023.8.29 pour ajouter IronXL à votre projet.

Quels sont les avantages d'utiliser IronXL pour les tâches Excel en C# ?

IronXL fournit un ensemble robuste de fonctionnalités pour gérer les tâches Excel en C#, telles que la lecture, l'édition et l'exportation de feuilles de calcul Excel au format CSV. Il prend en charge divers frameworks .NET et systèmes d'exploitation, ce qui le rend polyvalent pour différents environnements sans avoir besoin de bibliothèques externes.

IronXL peut-il gérer les calculs et la manipulation des données dans les fichiers Excel ?

Oui, IronXL peut gérer les calculs, le tri, la fusion et la gestion de différents types de données dans les fichiers Excel, fournissant une solution complète pour les tâches liées à Excel.

Quelles plateformes IronXL prend-il en charge pour l'intégration Excel ?

IronXL prend en charge plusieurs plateformes, notamment .NET Core, .NET Framework, Xamarin, Linux, macOS, Azure et Windows, permettant un déploiement flexible sur divers systèmes.

Quels formats de fichiers IronXL peut-il lire et écrire ?

IronXL peut lire et écrire divers formats de fichiers Excel, y compris XLSX, CSV, XLS, XLST, TSV, XLSM et plus, facilitant une intégration et un export de données transparents.

Y a-t-il un essai disponible pour IronXL ?

Oui, IronXL offre une version d'essai gratuite qui vous permet d'explorer ses fonctionnalités et capacités avant de vous engager à acheter une licence complète.

Comment puis-je convertir un tableau de données en un fichier CSV en C# ?

En utilisant IronXL, vous pouvez convertir un tableau de données en une feuille de calcul Excel et ensuite utiliser la méthode SaveAsCsv pour l'exporter sous forme de fichier CSV, rendant la conversion de données simple et efficace.

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