Como Converter Planilha Excel para Outros Formatos em C# com IronXL
IronXL permite que desenvolvedores C# convertam planilha Excel entre vários formatos, incluindo XLS, XLSX, CSV, JSON, XML e HTML usando métodos simples de Load e SaveAs, simplificando transformações de formato de arquivo em aplicativos de negócios.
IronXL suporta a conversão de planilha Excel entre vários formatos, incluindo XLS, XLSX, XLSM, XLTX, CSV, TSV, JSON, XML e HTML. Também suporta tipos de dados em código inline, como strings de HTML, dados binários, arrays de bytes, DataSets e MemoryStreams. O método Load é usado para abrir um arquivo de planilha, e o método SaveAs é usado para exportar a planilha para o tipo de arquivo desejado.
Essa flexibilidade torna o IronXL uma ferramenta essencial para desenvolvedores .NET que precisam ler arquivo Excel, criar planilha Excel ou converter entre formatos em diferentes plataformas e aplicativos. Seja construindo ferramentas de migração de dados, sistemas de relatórios ou aplicativos de inteligência de negócios, a capacidade de converter perfeitamente entre formatos assegura a compatibilidade com diversos sistemas e requisitos de usuário.
Início rápido: Converter uma planilha Excel para JSON
Com uma simples linha de código, IronXL permite que você carregue um arquivo Excel e o exporte como JSON - sem configuração complexa, apenas resultados rápidos. É um exemplo perfeito para desenvolvedores que precisam de conversão de tipo de arquivo rápida.
-
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").SaveAsJson("output.json"); -
Implante para testar em seu ambiente de produção.
Comece a usar IronXL em seu projeto hoje com uma avaliação gratuita
- Instale a biblioteca C# para converter arquivos Excel para outros formatos de arquivo
- Use the `WorkBook` class to load or create new XLS or XLSX
- Visualize, adicione ou modifique dados na planilha do Excel usando C#.
- Utilize the methods in the `WorkBook` class to export the spreadsheet
- Verifique o arquivo exportado no diretório especificado.
Como Converto Tipos de Arquivo de Planilha?
O processo de conversão de tipos de planilha envolve carregar um arquivo em um formato suportado e exportá-lo para outro formato utilizando as capacidades inteligentes de reestruturação de dados do IronXL. Este processo de conversão preserva a integridade dos dados enquanto se adapta aos requisitos estruturais de cada formato de destino.
Embora o método SaveAs possa ser usado para exportar para CSV, JSON, XML e HTML, é recomendável usar os métodos dedicados para cada formato de arquivo:
SaveAsCsv- Otimizado para valores separados por vírgula com escape adequadoSaveAsJson- Cria JSON devidamente formatado com preservação do tipo de dadoSaveAsXml- Gera XML bem formatado com esquema apropriadoExportToHtml- Produz tabelas HTML estilizadas com formatação mantida
fileName.sheetName.format. No exemplo abaixo, a saída para o formato CSV seria sample.new_sheet.csv.
:path=/static-assets/excel/content-code-examples/how-to/convert-spreadsheet-file-types-different-format.cs
using IronXL;
// Load the Excel spreadsheet
WorkBook workbook = WorkBook.Load("sample.xlsx");
// Convert and save as CSV
workbook.SaveAsCsv("sample.csv");
// Convert and save as JSON
workbook.SaveAsJson("sample.json");
// Convert and save as XML
workbook.SaveAsXml("sample.xml");
// Convert and export to HTML
workbook.ExportToHtml("sample.html");
// The files will be saved in the project's directory with the specified formats
Imports IronXL
' Load the Excel spreadsheet
Dim workbook As WorkBook = WorkBook.Load("sample.xlsx")
' Convert and save as CSV
workbook.SaveAsCsv("sample.csv")
' Convert and save as JSON
workbook.SaveAsJson("sample.json")
' Convert and save as XML
workbook.SaveAsXml("sample.xml")
' Convert and export to HTML
workbook.ExportToHtml("sample.html")
' The files will be saved in the project's directory with the specified formats
Cada método de exportação é otimizado para seu formato-alvo. Por exemplo, converter XLSX para CSV lida corretamente com caracteres especiais e delimitadores, enquanto a exportação JSON mantém tipos de dados e estruturas hierárquicas.
Quando devo usar cada formato?
Entender quando usar cada formato de arquivo é crucial para aplicações empresariais:
- CSV/TSV: Melhor para dados tabulares simples, importações de banco de dados, ou quando você precisa de máxima compatibilidade com outros aplicativos
- JSON: Ideal para serviços web, APIs REST, e aplicativos JavaScript modernos
- XML: Adequado para troca de dados estruturados, arquivos de configuração e integração de sistemas legados
- HTML: Perfeito para exibir dados em websites ou gerar relatórios para distribuição por e-mail
Quais opções avançadas de conversão estão disponíveis?
Na seção anterior, exploramos os formatos de arquivo mais comuns para conversão. No entanto, o IronXL tem a capacidade de converter planilhas para muitos outros formatos. Explore todas as opções disponíveis para carregar e exportar planilhas, incluindo cenários avançados como exportar para DataSet e DataTable para operações de banco de dados.
Quais formatos de arquivo posso carregar?
- XLS, XLSX, XLSM e XLTX
- CSV (Valores Separados por Vírgula)
- TSV (Valores Separados por Tabulação)
Para quais formatos posso exportar?
- XLS, XLSX e XLSM
- CSV e TSV
- JSON
- XML
- HTML
-
Tipos de dados em código inline:
- String HTML
- Array de Binário e Byte
- DataSet: Exportar Excel em objetos
System.Data.DataSeteSystem.Data.DataTablepermite fácil interoperabilidade ou integração com DataGrids, SQL e EF. - MemoryStream
Os tipos de dados em código inline podem ser enviados como uma resposta de API RESTful ou usados com IronPDF para convertê-los em um documento PDF. Essa flexibilidade é particularmente útil ao criar planilhas dinamicamente em aplicações web.
:path=/static-assets/excel/content-code-examples/how-to/convert-spreadsheet-file-types-different-format-advanced.cs
using IronXL;
// Load the Excel spreadsheet
WorkBook workbook = WorkBook.Load("advanced_sample.xlsx");
// Convert and save to various formats
workbook.SaveAs("advanced_sample.xlsm");
workbook.SaveAsCsv("advanced_sample.csv");
workbook.SaveAsJson("advanced_sample.json");
workbook.SaveAsXml("advanced_sample.xml");
workbook.ExportToHtml("advanced_sample.html");
// You can also convert to binary or byte array for advanced uses
byte[] excelAsByteArray = workbook.ToBinary();
Imports IronXL
' Load the Excel spreadsheet
Dim workbook As WorkBook = WorkBook.Load("advanced_sample.xlsx")
' Convert and save to various formats
workbook.SaveAs("advanced_sample.xlsm")
workbook.SaveAsCsv("advanced_sample.csv")
workbook.SaveAsJson("advanced_sample.json")
workbook.SaveAsXml("advanced_sample.xml")
workbook.ExportToHtml("advanced_sample.html")
' You can also convert to binary or byte array for advanced uses
Dim excelAsByteArray As Byte() = workbook.ToBinary()
O código acima carrega um arquivo XLSX comum, depois converte e exporta para vários formatos. Para exemplos abrangentes de conversões de arquivos, visite nossa página de exemplos de conversão.
Como é a aparência da saída convertida?
Os vários arquivos exportados são mostrados abaixo.
Melhores práticas para conversão de arquivos
Ao converter arquivos de planilhas, considere estas melhores práticas para garantir resultados ideais:
-
Preserve a Integridade dos Dados: Sempre verifique se os dados críticos, fórmulas e formatação são mantidos após a conversão. Alguns formatos, como CSV, não suportam várias planilhas ou formatação.
-
Lide com Arquivos Grandes de Forma Eficiente: Para grandes planilhas, considere usar métodos de streaming ou processar dados em partes para gerenciar o uso de memória de forma eficaz.
- Tratamento de Erros: Implemente tratativas adequadas para capturar falhas de conversão:
try
{
WorkBook workbook = WorkBook.Load("input.xlsx");
// Check if the file has data before converting
if (workbook.WorkSheets.Count > 0 && workbook.DefaultWorkSheet.RowCount > 0)
{
workbook.SaveAsCsv("output.csv");
Console.WriteLine("Conversion successful!");
}
else
{
Console.WriteLine("No data found in the spreadsheet.");
}
}
catch (Exception ex)
{
Console.WriteLine($"Conversion failed: {ex.Message}");
}
try
{
WorkBook workbook = WorkBook.Load("input.xlsx");
// Check if the file has data before converting
if (workbook.WorkSheets.Count > 0 && workbook.DefaultWorkSheet.RowCount > 0)
{
workbook.SaveAsCsv("output.csv");
Console.WriteLine("Conversion successful!");
}
else
{
Console.WriteLine("No data found in the spreadsheet.");
}
}
catch (Exception ex)
{
Console.WriteLine($"Conversion failed: {ex.Message}");
}
Imports System
Try
Dim workbook As WorkBook = WorkBook.Load("input.xlsx")
' Check if the file has data before converting
If workbook.WorkSheets.Count > 0 AndAlso workbook.DefaultWorkSheet.RowCount > 0 Then
workbook.SaveAsCsv("output.csv")
Console.WriteLine("Conversion successful!")
Else
Console.WriteLine("No data found in the spreadsheet.")
End If
Catch ex As Exception
Console.WriteLine($"Conversion failed: {ex.Message}")
End Try
-
Escolha o Formato Correto: Selecione o formato de saída com base em suas necessidades específicas:
- Use
XLSXpara total funcionalidade do Excel - Escolha
CSVpara troca de dados simples - Selecione
JSONpara aplicativos web e APIs - Escolha
XMLpara dados estruturados com esquemas - Exporte para
HTMLpara exibição na web
- Use
- Codificação de Caracteres: Preste atenção à codificação de caracteres, especialmente ao lidar com dados internacionais. O IronXL manipula a codificação
UTF-8por padrão, garantindo representação adequada de caracteres em diferentes sistemas.
Para orientações mais detalhadas sobre o trabalho com arquivos do Excel em aplicações .NET, explore a extensa documentação do IronXL.
Perguntas frequentes
Como faço para converter arquivos do Excel para o formato CSV em C#?
Com o IronXL, você pode converter arquivos do Excel para CSV usando o método SaveAsCsv. Basta carregar seu arquivo do Excel com WorkBook.Load() e, em seguida, chamar SaveAsCsv() para exportá-lo. O IronXL lida automaticamente com a formatação e o escape adequados, criando um arquivo CSV separado para cada planilha do seu arquivo do Excel.
Posso converter várias planilhas do Excel para JSON simultaneamente?
Sim, o IronXL converte automaticamente todas as planilhas ao exportar para o formato JSON. Ao usar o método SaveAsJson, o IronXL cria arquivos JSON separados para cada planilha, seguindo a convenção de nomenclatura nomeDoArquivo.nomeDaPlanilha.json, preservando os tipos de dados e a estrutura de cada planilha.
Quais formatos de arquivo de planilha são suportados para conversão?
O IronXL suporta a conversão entre vários formatos, incluindo XLS, XLSX, XLSM, XLTX, CSV, TSV, JSON, XML e HTML. Além disso, ele suporta tipos de dados de código embutido, como strings HTML, dados binários, arrays de bytes, DataSets e MemoryStreams, para máxima flexibilidade em seus aplicativos C#.
Como posso preservar a formatação do Excel ao converter para HTML?
Ao converter arquivos Excel para HTML, utilize o método ExportToHtml do IronXL em vez do genérico SaveAs. Esse método específico gera tabelas HTML formatadas que preservam a formatação do seu arquivo Excel original, garantindo que a apresentação dos seus dados permaneça consistente em todos os formatos.
É possível converter arquivos do Excel sem o Microsoft Office instalado?
Sim, o IronXL funciona de forma independente, sem exigir o Microsoft Office ou o Excel Interop. Ele oferece uma solução completa para conversão de arquivos Excel em C#, sendo ideal para ambientes de servidor e aplicações onde a instalação do Office não é viável.
Qual a maneira mais simples de converter um arquivo do Excel para outro formato?
A abordagem mais simples com o IronXL é usar uma única linha de código: IronXL.WorkBook.Load("input.xlsx").SaveAsJson("output.json"). Isso carrega seu arquivo Excel e o exporta imediatamente para o formato desejado — substitua SaveAsJson por SaveAsCsv, SaveAsXml ou ExportToHtml, conforme necessário.

