Ir para o conteúdo do rodapé
USANDO O IRONXL

Como exportar para CSV no .NET Core

1.0 Introdução

Uma das bibliotecas mais conhecidas, IronXL, será usada neste artigo para contrastar e comparar diferentes maneiras que tecnologias .NET podem interagir programaticamente com documentos do Microsoft Excel. Ele também criará um ambiente para ler, escrever e exportar planilhas do Excel para arquivos CSV.

2.0 IronXL

O IronXL for .NET, uma biblioteca C# Excel, pode ser usado para ler e converter documentos do Microsoft Excel em arquivos CSV. IronXL é uma biblioteca de software .NET independente que pode ser usada sem a instalação do Microsoft Office ou Microsoft.Office.Interop.Excel. Ele pode ler uma variedade de formatos de planilhas.

Planilhas Excel podem ser lidas, editadas e geradas com facilidade em um contexto .NET graças à API simples de C# do IronXL. Xamarin, Linux, macOS, Azure, .NET Core e .NET Framework são totalmente suportados pelo IronXL.

2.1 Recursos da Biblioteca IronXL

  • Entre as maiores bibliotecas C# para planilhas Excel está o IronXL, que funciona tanto com .NET Core quanto com .NET Framework.
  • Praticamente todos os .NET Frameworks são suportados pelo IronXL, incluindo aplicativos de console, Windows Forms e Web.
  • Windows, macOS e Linux são todos compatíveis com IronXL.
  • Arquivos Excel podem ser acessados rápida e facilmente usando IronXL.
  • Formatos de arquivo Excel como arquivos XLSX, arquivos CSV, XLS, XSLT, TSV, XLSM e outros podem ser lidos pelo IronXL. Entre muitas possibilidades estão funções para importar, atualizar e exportar conjuntos de dados e tabelas de dados.
  • Cálculos para a planilha Excel podem ser gerados pelo IronXL.
  • Para colunas do Excel, IronXL suporta uma ampla gama de tipos de dados, como texto, inteiros, datas, moedas, fórmulas e porcentagens.
  • Datas, moedas, porcentagens, texto, números, fórmulas, e outros tipos de dados de colunas do Excel são todos suportados pelo IronXL.

3.0 Criando um Projeto .NET Core 6

Você verá como é fácil criar um arquivo CSV usando a biblioteca IronXL nas seções a seguir deste boletim.

Etapa 1: Inicie um novo projeto para gerar um arquivo CSV.

Abra o Visual Studio e escolha "Novo Projeto" no menu "Arquivo".

Escolha os modelos de Projeto "Aplicativo de Console" .NET na caixa de diálogo resultante, então clique em "Próximo".

Como Exportar para CSV em .NET Core, Figura 1: Criar um novo Aplicativo de Console no Visual Studio Crie um novo aplicativo de console no Visual Studio.

Você pode inserir qualquer nome que quiser para o "Nome do Projeto". Uma vez que a localização do novo projeto foi fornecida na seção "Localização", clique no botão Próximo para continuar.

Como Exportar para CSV em .NET Core, Figura 2: Configurar o novo projeto Configure o novo projeto

O menu suspenso do Framework pode ser usado para escolher um .NET Framework. Neste caso, a versão suportada a longo prazo do .NET é 6.0. Em seguida, clique no botão Criar.

Como Exportar para CSV em .NET Core, Figura 3: Seleção do framework de destino .NET Seleção do framework de destino .NET

Instale a biblioteca IronXL, pois é necessária para a resolução subsequente. Para realizar essa ação, digite o seguinte comando no Console do Gerenciador de Pacotes:

Install-Package IronXl.Excel

Como Exportar para CSV em .NET Core, Figura 4: Instalar o pacote IronXL Instale o pacote IronXL

Uma alternativa é procurar o pacote "IronXL" usando o Gerenciador de Pacotes NuGet. Na guia Navegar, insira "IronXL" na caixa de pesquisa para buscar a biblioteca IronXL. Dessa lista de todos os pacotes NuGet relacionados ao IronXL, selecione então o pacote necessário para baixar.

Como Exportar para CSV em .NET Core, Figura 5: Pesquisar e instalar o pacote IronXL na interface do gerenciador de pacotes NuGet Pesquisar e instalar o pacote IronXL na interface do Gerenciador de Pacotes NuGet

4.0 Exportar dados para arquivo CSV

Com IronXL, criar tabelas de dados para arquivos CSV é simples e rápido. Facilita a escrita de dados em um novo arquivo CSV. O primeiro passo é incluir o namespace IronXL, como visto na captura de tela do código abaixo. Uma vez que o IronXL é apresentado, suas classes e métodos podem ser usados no código.

Como Exportar para CSV em .NET Core, Figura 6: Incluir o namespace IronXL Inclua o namespace IronXL

IronXL pode ser usado para criar arquivos Excel, que são posteriormente convertidos em objetos WorkBook. Depois que eles se tornam objetos da classe WorkBook, é possível trabalhá-los de várias maneiras. Ao transformar um DataTable em uma planilha Excel, o código fonte de exemplo abaixo cria um arquivo Excel.

using IronXL;
using System.Data;

class Program
{
    static void Main(string[] args)
    {
        ExportToExcel("test.csv");
    }

    // Method to export a DataTable to an Excel sheet which is then saved as a CSV file
    public static void ExportToExcel(string filepath)
    {
        // Create a DataTable and add columns & rows
        DataTable table = new DataTable();
        table.Columns.Add("DataSet_Animals", typeof(string));
        table.Rows.Add("Lion");
        table.Rows.Add("Tiger");
        table.Rows.Add("Leopard");
        table.Rows.Add("Cheetah");
        table.Rows.Add("Hyenas");

        // Create a new workbook and get the default worksheet
        var workbook = WorkBook.Create(ExcelFileFormat.XLS);
        var worksheet = workbook.DefaultWorkSheet;

        // Add table data to worksheet
        int rowCount = 1;
        foreach (DataRow row in table.Rows)
        {
            worksheet["A" + rowCount].Value = row[0].ToString();
            rowCount++;
        }

        // Save worksheet data to a CSV file
        workbook.SaveAsCsv(filepath, ";");

        // Optionally convert workbook to a stream, useful for web applications
        var stream = workbook.ToStream();
    }
}
using IronXL;
using System.Data;

class Program
{
    static void Main(string[] args)
    {
        ExportToExcel("test.csv");
    }

    // Method to export a DataTable to an Excel sheet which is then saved as a CSV file
    public static void ExportToExcel(string filepath)
    {
        // Create a DataTable and add columns & rows
        DataTable table = new DataTable();
        table.Columns.Add("DataSet_Animals", typeof(string));
        table.Rows.Add("Lion");
        table.Rows.Add("Tiger");
        table.Rows.Add("Leopard");
        table.Rows.Add("Cheetah");
        table.Rows.Add("Hyenas");

        // Create a new workbook and get the default worksheet
        var workbook = WorkBook.Create(ExcelFileFormat.XLS);
        var worksheet = workbook.DefaultWorkSheet;

        // Add table data to worksheet
        int rowCount = 1;
        foreach (DataRow row in table.Rows)
        {
            worksheet["A" + rowCount].Value = row[0].ToString();
            rowCount++;
        }

        // Save worksheet data to a CSV file
        workbook.SaveAsCsv(filepath, ";");

        // Optionally convert workbook to a stream, useful for web applications
        var stream = workbook.ToStream();
    }
}
$vbLabelText   $csharpLabel

O exemplo de CSV acima mostra como exportar o DataTable para um arquivo CSV. Após um DataTable ter sido estabelecido, ou seja, os cabeçalhos das colunas são criados, e uma vez que a primeira coluna é estabelecida, as linhas são adicionadas uma por uma. Após adicionar as linhas e colunas ao objeto DataTable, o objeto WorkBook é construído. O objeto WorkBook é usado para adicionar dados a uma planilha Excel, que pode então ser salva em outro lugar. O próximo passo é iniciar o objeto WorkSheet, que é vinculado ao objeto do workbook.

Antes de adicionar o valor à planilha, um loop foreach é usado para ler cada valor do DataTable. A função SaveAsCsv é usada para salvar os dados em um arquivo CSV uma vez que todos eles tenham sido colocados na planilha usando o nome do arquivo como parâmetro. Um delimitador pode ser usado como um argumento opcional caso seja necessário. A biblioteca então auxilia na escrita de dados em um arquivo CSV. Há outra maneira de ler arquivos CSV além do Microsoft Excel usando o Bloco de Notas. Além disso, o método Save é usado para salvar o mesmo no formato de arquivo fornecido.

Como Exportar para CSV em .NET Core, Figura 7: Arquivo OUTPUT Excel test.csv Arquivo de saída Excel test.csv

Acima está a saída do exemplo de código que foi executado. Cada peça de informação da tabela de dados foi adicionada separadamente à nova planilha Excel criada na captura de tela. Alternativamente, ele também pode ser convertido em um fluxo como parte da Aplicação Web para retornar arquivos que podem ser baixados do lado do cliente.

Para mais informações sobre a exportação de dados de DataTable para Excel, por favor, verifique esta página de tutorial.

Para saber mais sobre como exportar dados para o Excel, consulte este tutorial passo a passo.

5.0 Conclusão

IronXL está entre as ferramentas Excel mais amplamente usadas. Não depende de outras bibliotecas externas. É autônomo e não precisa do Microsoft Excel instalado. Além disso, ele funciona através de vários canais.

Para todas as operações relacionadas a documentos do Microsoft Excel implementadas programaticamente, IronXL oferece uma solução abrangente. É possível calcular fórmulas, classificar cadeias de caracteres ou números, aparar, anexar, localizar e substituir, mesclar e desmesclar, salvar arquivos e muito mais. Juntamente com a validação de dados das planilhas, você também pode estabelecer tipos de dados das células. Facilita o trabalho com dados do Excel e permite ler e escrever arquivos.

IronXL oferece uma licença de teste gratuito, que permite aos usuários experimentar e testar todos os seus recursos incríveis gratuitamente.

No lançamento, IronXL está disponível para $799. Os usuários também podem optar por pagar uma taxa de assinatura anual para receber atualizações e assistência ao produto. IronXL fornece segurança para redistribuição irrestrita por um custo extra. Para consultar dados de preços mais precisos, visite a página de licenças da IronXL.

Perguntas frequentes

Como posso exportar dados para um arquivo CSV usando o .NET Core?

Você pode exportar dados para um arquivo CSV em um aplicativo .NET Core usando o IronXL. Comece configurando um novo projeto .NET Core no Visual Studio, instale o IronXL via NuGet e use seus objetos WorkBook e WorkSheet para salvar seus dados como um arquivo CSV com o método SaveAsCsv .

É possível ler e escrever arquivos do Excel sem o Microsoft Office?

Sim, o IronXL permite ler e gravar arquivos do Excel sem a necessidade do Microsoft Office ou Microsoft.Office.Interop.Excel . Ele oferece uma solução independente para gerenciar planilhas do Excel em aplicativos .NET.

Quais são os benefícios de usar o IronXL para exportações CSV no .NET Core?

IronXL oferece uma maneira simples e eficiente de lidar com exportações CSV no .NET Core. É compatível com múltiplas plataformas, não requer o Microsoft Office e oferece funcionalidades como cálculos de fórmulas, classificação de dados e manipulação de grandes conjuntos de dados.

Como faço para instalar o IronXL em um projeto .NET Core?

Para instalar o IronXL em um projeto .NET Core, você pode usar o Console do Gerenciador de Pacotes com o comando Install-Package IronXL ou usar a interface do usuário do Gerenciador de Pacotes NuGet no Visual Studio para pesquisar e instalar o 'IronXL'.

Posso usar o IronXL em plataformas que não sejam Windows?

Sim, o IronXL é compatível com diversas plataformas, incluindo Windows, macOS e Linux. Ele também oferece suporte a aplicativos Xamarin, Azure, .NET Core e .NET Framework, o que o torna versátil para vários ambientes.

Como lidar com grandes conjuntos de dados no Excel usando o IronXL?

O IronXL consegue lidar de forma eficiente com grandes conjuntos de dados no Excel, graças à sua robusta API em C#. Ele permite a manipulação rápida de dados, suporta diversos formatos do Excel e oferece funcionalidades como classificação e validação de dados.

O IronXL suporta cálculos com fórmulas do Excel?

Sim, o IronXL suporta cálculos com fórmulas do Excel. Você pode realizar cálculos complexos nos dados da sua planilha usando a API do IronXL, de forma semelhante ao que faria no Excel.

Existem opções de licenciamento disponíveis para o IronXL?

A IronXL oferece uma licença de avaliação gratuita para testar seus recursos, além de diversas opções de licenciamento para acesso a todas as funcionalidades. Isso proporciona aos desenvolvedores flexibilidade na escolha do plano mais adequado às suas necessidades.

Jordi Bardia
Engenheiro de Software
Jordi é extremamente proficiente em Python, C# e C++, e quando não está utilizando suas habilidades na Iron Software, dedica-se à programação de jogos. Compartilhando as responsabilidades por testes, desenvolvimento e pesquisa de produtos, Jordi agrega imenso valor à melhoria contínua dos produtos. Essa experiência diversificada o mantém ...
Leia mais

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me