Como Converter Planilha Excel XLSX para CSV, JSON, XML em C
IronXL converte planilha Excel para múltiplos formatos, incluindo JSON, CSV, XML, e formatos Excel antigos como XLS, usando comandos simples de uma linha que eliminam a análise manual.
IronXL converte planilha Excel para 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 aplicações web, ou integrando com sistemas legados, o 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 o IronXL para converter para XML, CSV, JSON, e exportar planilhas Excel como datasets para integração direta com controles de dados do .NET.
Início Rápido: Converta um arquivo XLSX para CSV com uma linha
Este exemplo mostra como o IronXL converte um caderno Excel existente em um arquivo CSV em uma linha. Carregue seu caderno e salve-o diretamente como CSV para começar imediatamente.
-
Instale IronXL com o Gerenciador de Pacotes NuGet
PM > Install-Package IronXL.Excel -
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
- 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 o IronXL antes de usá-lo em suas aplicações. IronXL suporta .NET MAUI, Blazor, e aplicações .NET tradicionais. 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
- Pesquise 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 automaticamente com a análise e formatação complexa.
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, o IronXL lida com caracteres especiais, células de várias linhas e escapamento 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 tipos de dados. Finalmente, ele exporta a Planilha como um DataSet para uso com objetos DataGridView, o que funciona bem quando trabalhando com DataTables.
Aqui está outro exemplo mostrando como converter planilhas específicas com opções personalizadas:
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 with formatting preserved
var jsonOptions = new JsonSaveOptions
{
PreserveFormatting = true,
IncludeHeaders = true
};
sheet.SaveAsJson("SalesData.json", jsonOptions);
// Convert to XML with custom root element
sheet.SaveAsXml("SalesData.xml", "SalesReport");
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 with formatting preserved
var jsonOptions = new JsonSaveOptions
{
PreserveFormatting = true,
IncludeHeaders = true
};
sheet.SaveAsJson("SalesData.json", jsonOptions);
// Convert to XML with custom root element
sheet.SaveAsXml("SalesData.xml", "SalesReport");
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 with formatting preserved
Dim jsonOptions As New JsonSaveOptions With {
.PreserveFormatting = True,
.IncludeHeaders = True
}
sheet.SaveAsJson("SalesData.json", jsonOptions)
' Convert to XML with custom root element
sheet.SaveAsXml("SalesData.xml", "SalesReport")
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.
Quando se trabalha com essas conversões, o IronXL lida automaticamente com muitas complexidades:
- 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 exigem alto desempenho ou lidam com limites de tamanho de arquivo, o IronXL oferece 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
Saiba mais e compartilhe como mesclar, desmesclar e trabalhar com células em planilhas do Excel usando a prática Documentação de Referência da API IronXL.
Documentação de Referência da API IronXLPerguntas 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.

