Como Converter XLSX para CSV, JSON, XML e mais em C
IronXL converte arquivos do Excel em vários formatos, incluindo JSON, CSV, XML e formatos mais antigos do Excel como XLS, usando comandos simples de uma linha que eliminam a análise manual.
IronXL converte qualquer arquivo do Excel em vários formatos, fornecendo aos desenvolvedores ferramentas para trabalhar com Excel em C# sem Interop. Seja migrando dados entre sistemas, criando exportações de dados para aplicativos web, ou integrando com sistemas legados, IronXL simplifica o processo de conversão.
Esses formatos incluem: JSON para APIs web modernas, CSV para intercâmbio de dados, XML para armazenamento de dados estruturados, e formatos Excel antigos como XLS para compatibilidade com versões anteriores. Cada formato atende a casos de uso específicos—CSV funciona bem para importações de banco de dados, JSON integra-se com APIs REST, e XML mantém relações de dados hierárquicas.
Este artigo demonstra como usar IronXL para converter para XML, CSV, JSON, e exportar planilhas do Excel como datasets para integração direta com controles de dados .NET.
Início Rápido: Converta um arquivo XLSX para CSV com uma linha
Este exemplo mostra como IronXL converte um workbook do Excel existente em um arquivo CSV em uma linha. Carregue seu workbook e salve-o diretamente como CSV para começar imediatamente.
-
Instale IronXL com o Gerenciador de Pacotes NuGet
-
Copie e execute este trecho de código.
IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv"); -
Implante para testar em seu ambiente de produção.
Comece a usar IronXL em seu projeto hoje com uma avaliação gratuita
Fluxo de trabalho mínimo (5 etapas)
- Baixe a biblioteca C# para converter XLSX para CSV
- Carregar planilha Excel XLSX existente
- Acesso ou modificação do caderno
- Exportar para arquivo CSV ou vários outros formatos, incluindo JSON, TSV e XML
- Verifique os arquivos de saída e aplique processamento adicional
Passo 1
Como Instalo a Biblioteca IronXL?
Primeiro, instale IronXL antes de usá-lo em suas aplicações. IronXL supports .NET MAUI, Blazor, and traditional .NET applications. Use qualquer um desses métodos de instalação:
Baixar: https://ironsoftware.com/csharp/excel/docs/
Ou use o Gerenciador de Pacotes NuGet:
- Clique com o botão direito no nome da Solução no Explorador de Soluções
- Clique em Gerenciar Pacotes NuGet
- Procure por
IronXL.Excel - Instalar
Install-Package IronXL.Excel
Tutorial de Como Fazer
Como posso converter arquivos Excel para diferentes formatos?
IronXL fornece capacidades de conversão que lidam com análise e formatação complexa automaticamente.
Adicione o seguinte código:
:path=/static-assets/excel/content-code-examples/how-to/csharp-convert-xlsx-csv-convert.cs
using IronXL;
// Load an existing Excel workbook
WorkBook workbook = WorkBook.Load("Normal_Excel_File.xlsx");
// Set metadata title for the workbook
workbook.Metadata.Title = "Normal_Excel_File.xlsx";
// Save the workbook in different formats
workbook.SaveAs("XLS_Export.xls");
workbook.SaveAs("XLSX_Export.xlsx");
workbook.SaveAsCsv("CSV_Export.csv");
workbook.SaveAsJson("JSON_Export.json");
workbook.SaveAsXml("XML_Export.xml");
// Convert the workbook to a DataSet, allowing integration with other data tools like DataGridView
System.Data.DataSet dataSet = workbook.ToDataSet();
Imports IronXL
' Load an existing Excel workbook
Dim workbook As WorkBook = WorkBook.Load("Normal_Excel_File.xlsx")
' Set metadata title for the workbook
workbook.Metadata.Title = "Normal_Excel_File.xlsx"
' Save the workbook in different formats
workbook.SaveAs("XLS_Export.xls")
workbook.SaveAs("XLSX_Export.xlsx")
workbook.SaveAsCsv("CSV_Export.csv")
workbook.SaveAsJson("JSON_Export.json")
workbook.SaveAsXml("XML_Export.xml")
' Convert the workbook to a DataSet, allowing integration with other data tools like DataGridView
Dim dataSet As System.Data.DataSet = workbook.ToDataSet()
O código acima carrega um arquivo XLSX, adiciona um Título, e depois o converte para vários formatos. Ao converter para CSV, IronXL lida com caracteres especiais, células multilinha, e escape adequado. Para exportações JSON, ele cria uma representação de objeto estruturado dos dados da sua planilha. A conversão para XML preserva a formatação das células e os tipos de dados. Por fim, exporta o Worksheet como um DataSet para uso com objetos DataGridView, que funciona bem ao trabalhar com DataTables.
Aqui está outro exemplo mostrando como converter planilhas específicas com opções personalizadas:
:path=/static-assets/excel/content-code-examples/how-to/csharp-convert-xlsx-to-csv-4.cs
using IronXL;
// Load workbook and select specific worksheet
WorkBook workbook = WorkBook.Load("MultiSheet.xlsx");
WorkSheet sheet = workbook.WorkSheets["SalesData"];
// Convert just one worksheet to CSV with custom delimiter
sheet.SaveAsCsv("SalesData.csv", delimiter: ";");
// Export to JSON
sheet.SaveAsJson("SalesData.json");
// Convert to XML
sheet.SaveAsXml("SalesData.xml");
Imports IronXL
' Load workbook and select specific worksheet
Dim workbook As WorkBook = WorkBook.Load("MultiSheet.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets("SalesData")
' Convert just one worksheet to CSV with custom delimiter
sheet.SaveAsCsv("SalesData.csv", delimiter: ";")
' Export to JSON
sheet.SaveAsJson("SalesData.json")
' Convert to XML
sheet.SaveAsXml("SalesData.xml")
Para cenários avançados, você pode exportar para múltiplos formatos simultaneamente ou lidar com arquivos grandes de forma eficiente:
using IronXL;
using System.Threading.Tasks;
// Async conversion for large files
public async Task ConvertLargeFileAsync(string inputPath)
{
WorkBook workbook = WorkBook.Load(inputPath);
// Parallel export to multiple formats
var tasks = new[]
{
Task.Run(() => workbook.SaveAsCsv("output.csv")),
Task.Run(() => workbook.SaveAsJson("output.json")),
Task.Run(() => workbook.SaveAsXml("output.xml"))
};
await Task.WhenAll(tasks);
}
using IronXL;
using System.Threading.Tasks;
// Async conversion for large files
public async Task ConvertLargeFileAsync(string inputPath)
{
WorkBook workbook = WorkBook.Load(inputPath);
// Parallel export to multiple formats
var tasks = new[]
{
Task.Run(() => workbook.SaveAsCsv("output.csv")),
Task.Run(() => workbook.SaveAsJson("output.json")),
Task.Run(() => workbook.SaveAsXml("output.xml"))
};
await Task.WhenAll(tasks);
}
Imports IronXL
Imports System.Threading.Tasks
' Async conversion for large files
Public Async Function ConvertLargeFileAsync(inputPath As String) As Task
Dim workbook As WorkBook = WorkBook.Load(inputPath)
' Parallel export to multiple formats
Dim tasks = New Task() {
Task.Run(Sub() workbook.SaveAsCsv("output.csv")),
Task.Run(Sub() workbook.SaveAsJson("output.json")),
Task.Run(Sub() workbook.SaveAsXml("output.xml"))
}
Await Task.WhenAll(tasks)
End Function
Os diversos arquivos exportados são mostrados abaixo.
Cada formato de conversão serve a diferentes propósitos em aplicações modernas. Arquivos CSV funcionam bem para importação de dados em bancos de dados ou ferramentas de análise de dados. O formato JSON é adequado para APIs da Web e aplicações JavaScript. XML mantém a estrutura de dados e é comumente usado em sistemas empresariais. O formato XLS legado garante compatibilidade com versões mais antigas do Excel e sistemas que requerem compatibilidade retroativa.
Ao trabalhar com essas conversões, IronXL lida com muitas complexidades automaticamente:
- Codificação de Caracteres: Codificação UTF-8 adequada para caracteres internacionais
- Preservação do Tipo de Dados: Mantém a formatação numérica, de data e texto
- Avaliação de Fórmulas: Calcula os resultados das fórmulas antes da exportação
- Manuseio de Arquivos Grandes: Uso eficiente de memória para planilhas grandes
- Tratamento de Erros: Tratamento gracioso de arquivos corrompidos ou protegidos
Para aplicações que requerem alto desempenho ou lidam com limites de tamanho de arquivo, IronXL fornece opções de otimização. Você pode integrar essas conversões em fluxos de trabalho automatizados, serviços web ou aplicações desktop.
Acesso rápido à biblioteca
Documentação de Referência da API IronXL
Saiba mais e compartilhe como mesclar, desmesclar e trabalhar com células em planilhas Excel usando a prática Documentação de Referência da API IronXL.
Perguntas frequentes
Como faço para converter um arquivo XLSX para CSV em C# sem o Excel instalado?
O IronXL permite converter arquivos XLSX para CSV com uma única linha de código: IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv"). Isso funciona sem a necessidade de ter o Microsoft Excel ou o Interop instalados no seu sistema.
Para quais formatos de arquivo posso converter arquivos do Excel usando C#?
O IronXL suporta a conversão de arquivos Excel para diversos formatos, incluindo CSV, JSON, XML, TSV e formatos Excel mais antigos, como XLS. Cada formato é ideal para diferentes casos de uso: CSV para importação de bancos de dados, JSON para APIs REST e XML para manter estruturas de dados hierárquicas.
Como faço para instalar a biblioteca de conversão do Excel para C#?
Instale o IronXL usando o Gerenciador de Pacotes NuGet, pesquisando por 'IronXL.Excel' ou através do Console do Gerenciador de Pacotes com o comando 'Install-Package IronXL'. A biblioteca é compatível com aplicações .NET MAUI, Blazor e .NET tradicionais.
Posso converter um arquivo Excel para JSON para usar com APIs da web?
Sim, o IronXL oferece conversão integrada de Excel para o formato JSON, facilitando a integração de dados do Excel com APIs web modernas e serviços REST. A conversão lida automaticamente com estruturas de dados complexas.
A conversão para Excel lida com caracteres especiais e formatação?
O IronXL lida automaticamente com caracteres especiais, células com várias linhas e escapes adequados ao converter arquivos do Excel para formatos como CSV. Isso elimina a necessidade de análise manual ou correções de formatação.

