USANDO O IRONXL

Como ler um arquivo CSV usando C# (tutorial com exemplo de código)

Curtis Chau
Curtis Chau
Updated: 28 de junho de 2026

Este tutorial demonstra como ler um arquivo CSV usando a biblioteca IronXL C# sem instalar interop adicional, de maneira altamente eficiente e eficaz.

How to read CSV Files in C#

Você deve primeiro instalar o IronXL antes de usá-lo para ler arquivos CSV em MVC, ASP.NET ou .NET Core. Aqui está um resumo básico do processo.

Selecione o menu Projeto no Visual Studio, Gerenciar Pacotes do NuGet e Pesquise por IronXL.Excel, e Instale.

Ler Arquivo CSV Usando C# (Exemplo de Código Tutorial), Figura 1: Instale o pacote IronXL no Gerenciador de Pacotes NuGet Instale o pacote IronXL no Gerenciador de Pacotes NuGet

IronXL é uma ótima ferramenta para usar quando você precisa ler arquivos CSV em C#. O exemplo de código abaixo mostra que você pode ler um arquivo CSV usando vírgulas ou outro delimitador.

// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");

// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;

// Save the workbook as an Excel file
workbook.SaveAs("Csv_To_Excel.xlsx");

Ler Arquivo CSV Usando C# (Exemplo de Código Tutorial), Figura 2: Dados CSV para este tutorial Dados CSV para este tutorial

The object WorkBook is created. O método LoadCSV do objeto WorkBook é então usado para indicar o nome do arquivo CSV, seu formato e os delimitadores usados no arquivo CSV sendo lido, que são armazenados como um array de strings. Vírgulas são utilizadas como delimitadores neste cenário.

Após isso, um objeto WorkSheet é criado; é aqui que o conteúdo do arquivo CSV será armazenado. O arquivo é então renomeado e armazenado em um novo formato. Os dados do arquivo CSV são então dispostos na planilha em forma de tabela. A saída ficará algo assim:

Ler Arquivo CSV Usando C# (Exemplo de Código Tutorial), Figura 3: Dados convertidos em arquivo Excel Dados convertidos em arquivo Excel

CSV parsing in C# .NET

Os arquivos CSV têm vários problemas com a forma como as quebras de linha são manipuladas nos campos e como os campos podem estar entre aspas, o que impede que uma técnica simples de divisão de string funcione Split("'"). Em vez disso, o IronXL oferece a personalização do delimitador usando um parâmetro opcional do método LoadCSV, consulte a documentação da API de LoadCSV para mais detalhes.

C# Records - Reading CSV Data

No exemplo abaixo, o loop foreach é usado para iterar sobre as linhas no arquivo CSV, e o Console é usado para escrever os dados em um registro.

// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("Weather.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");

// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;

// Convert the worksheet data into a DataTable
DataTable dt = ws.ToDataTable(true); // The argument true indicates the first row is header

// Iterate through each row in the DataTable
foreach (DataRow row in dt.Rows)
{
    // Iterate through each column in the current row
    for (int i = 0; i < dt.Columns.Count; i++)
    {
        // Output each cell value to the console
        Console.Write(row[i] + "  ");
    }
    // New line after each row
    Console.WriteLine();
}

Ler Arquivo CSV Usando C# (Exemplo de Código Tutorial), Figura 4: Acessando dados do arquivo CSV e exibindo no Console Acessando dados do arquivo CSV e exibindo no Console

Convertendo uma linha de string de arquivo CSV para formato Excel

O procedimento é simples: carregue um arquivo CSV e salve como um arquivo Excel.

// Load a CSV file into a WorkBook object specifying file format and delimiters
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");

// Get the default worksheet from the workbook
WorkSheet ws = workbook.DefaultWorkSheet;

// Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx");

Ler e Manipular Arquivos CSV Convertidos usando IronXL

A classe IronXL WorkBook representa uma planilha Excel e usa essa classe para abrir um arquivo Excel em C#. Os exemplos de código abaixo irão carregar o arquivo Excel desejado em um objeto WorkBook:

// Load WorkBook from a .xlsx file
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");

Objetos WorkSheet podem ser encontrados em vários WorkBooks. Estas são as planilhas do documento Excel. Se o workbook tiver planilhas, você pode obtê-las pelo nome fazendo o seguinte:

// Open a specific worksheet for reading by its name
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");

Código para leitura dos valores das células:

// Read and output values from a range of cells elegantly
foreach (var cell in worksheet["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}

O exemplo de código a seguir pode atualizar fórmulas ou aplicá-las a células específicas após carregar e ler o workbook e a planilha. O seguinte é o código:

// Set formulas for specific cells
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();

Conclusão e Oferta Especial IronXL

IronXL transforma CSVs em Excel com apenas duas linhas de código, além de processar CSVs em C#.

Sem a necessidade de Interop, usar a API Excel da IronXL é muito fácil. Além disso, IronXL também oferece uma ampla gama de recursos para interagir com níveis de WorkBook, WorkSheet e Células do Excel, como converter entre formatos populares, formatar dados de células, mesclar células, inserir funções matemáticas, e até mesmo gerenciar gráficos e adicionar imagens.

Você pode lançar sem uma marca d'água usando chaves de licença de teste do IronXL.

As licenças começam em $999 e incluem um ano de suporte e atualizações gratuitos.

IronPDF, IronXL, IronOCR, IronBarcode, and the IronWebScraper are all part of the Iron Software suite. Iron Software permite que você compre todo o pacote por um preço reduzido. Você pode usar todas essas ferramentas pelo preço de duas.

Esta é definitivamente uma opção que vale a pena explorar.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Artigos relacionados