Converter dados do Excel para CSV é uma necessidade frequente ao construir pipelines de dados, ferramentas de relatório ou recursos de importação/exportação. Aspose.BarCode Cloud SDK for Node.js oferece uma biblioteca robusta que torna a conversão de XLS para CSV no Node.JS simples e confiável. Este guia orienta você pelos pré‑requisitos, etapas de instalação, um exemplo completo em funcionamento e dicas de boas práticas, para que possa integrar a conversão em sua aplicação com confiança.
Exemplo Completo de Funcionamento para Conversão de XLS para CSV em Node.JS usando Aspose.BarCode
Este exemplo demonstra como ler uma pasta de trabalho XLS a partir do armazenamento em nuvem, converter cada planilha para CSV e transmitir o resultado de volta ao cliente.
// Full working code for XLS to CSV conversion using Aspose.BarCode Cloud SDK
const { BarcodeApi, Configuration } = require('aspose-barcode-cloud');
const fs = require('fs');
const path = require('path');
// ==== Configuration ====
const config = new Configuration({
clientId: "YOUR_CLIENT_ID",
clientSecret: "YOUR_CLIENT_SECRET",
// Optional: set a custom base URL if you use a private cloud
// baseUrl: "https://api.aspose.cloud"
});
const apiInstance = new BarcodeApi(config);
// ==== Input / Output Paths ====
const inputFile = "sample.xls"; // Path to your local XLS file
const outputFolder = "output"; // Cloud folder for CSV files
// ---- 1. Upload XLS to cloud storage ----
async function uploadFile() {
const fileData = fs.readFileSync(inputFile);
await apiInstance.uploadFile({ path: inputFile, file: fileData });
console.log(`Uploaded ${inputFile} to cloud storage.`);
}
// ---- 2. Convert XLS to CSV ----
async function convertXlsToCsv() {
// Conversion options
const options = {
storage: "Default", // Use default storage
outPath: outputFolder, // Destination folder
format: "CSV", // Target format
// Optional: delimiter, encoding, etc.
delimiter: ",",
encoding: "UTF-8"
};
// Call the conversion endpoint (hypothetical method)
const response = await apiInstance.convertDocument({
name: inputFile,
format: "csv",
options: options
});
console.log(`Conversion started. Check ${outputFolder} for CSV files.`);
return response;
}
// ---- 3. Download generated CSV files ----
async function downloadCsvFiles() {
const files = await apiInstance.getFilesList({ path: outputFolder });
for (const file of files.value) {
if (file.name.endsWith(".csv")) {
const csvData = await apiInstance.downloadFile({ path: `${outputFolder}/${file.name}` });
const localPath = path.join(__dirname, "result", file.name);
fs.mkdirSync(path.dirname(localPath), { recursive: true });
fs.writeFileSync(localPath, csvData.body);
console.log(`Downloaded ${file.name} to ${localPath}`);
}
}
}
// ==== Execution Flow ====
(async () => {
try {
await uploadFile();
await convertXlsToCsv();
await downloadCsvFiles();
console.log("XLS to CSV conversion completed successfully.");
} catch (error) {
console.error("Error during conversion:", error);
}
})();
Nota: Este exemplo de código demonstra a funcionalidade principal. Antes de usá-lo em seu projeto, certifique-se de atualizar os caminhos dos arquivos (
sample.xls,output), verifique se todas as dependências necessárias estão corretamente instaladas e teste minuciosamente em seu ambiente de desenvolvimento. Se encontrar algum problema, consulte a documentação oficial ou entre em contato com a equipe de suporte para obter assistência.
Conversão de XLS para CSV via API Cloud com cURL
Você pode realizar a mesma conversão sem escrever código usando cURL para chamar os endpoints REST. O fluxo consiste em autenticação, upload de arquivo, solicitação de conversão e download.
# 1. Get an access token
curl -X POST "https://api.aspose.cloud/connect/token" \
-d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET" \
-H "Content-Type: application/x-www-form-urlencoded"
# Response contains "access_token"
# 2. Upload the XLS file
curl -X PUT "https://api.aspose.cloud/v3.0/barcode/storage/file/sample.xls" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-T "sample.xls"
# 3. Request XLS to CSV conversion
curl -X POST "https://api.aspose.cloud/v3.0/barcode/convert/sample.xls?format=csv&outPath=output" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
# 4. Download the generated CSV file
curl -X GET "https://api.aspose.cloud/v3.0/barcode/storage/file/output/sample.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" -o "sample.csv"
Para mais detalhes sobre os parâmetros da solicitação, veja a documentação oficial da API.
Como a Conversão de XLS para CSV em Node.JS Funciona
- Configuração - Um objeto
Configurationcontém suas credenciais de cliente e a URL base opcional. Esse objeto é passado para a instânciaBarcodeApi.const config = new Configuration({ clientId, clientSecret }); const apiInstance = new BarcodeApi(config); - Upload de Arquivo - O método
uploadFileenvia o arquivo XLS local para o armazenamento em nuvem Aspose.BarCode, tornando-o disponível para conversão.await apiInstance.uploadFile({ path: inputFile, file: fileData }); - Chamada de Conversão -
convertDocument(hipotético) envia uma solicitação com o nome do arquivo de origem, o formato de destino (csv) e opções de conversão como delimitador e codificação. O serviço processa cada planilha e cria os arquivos CSV correspondentes.const response = await apiInstance.convertDocument({ name: inputFile, format: "csv", options }); - Recuperação de Resultados - Após a conversão,
getFilesListlista os arquivos CSV gerados na pasta de saída. Cada arquivo é então baixado comdownloadFilee salvo localmente.const files = await apiInstance.getFilesList({ path: outputFolder }); const csvData = await apiInstance.downloadFile({ path: csvPath }); - Tratamento de Erros - Qualquer erro da API é capturado no bloco
catch, onde você pode registrar detalhes ou implementar lógica de repetição. Para uma lista completa de códigos de erro, consulte a referência da API.
Preparação do Ambiente - Pré-requisitos e Configuração
Antes de começar, certifique‑se de que os seguintes pré-requisitos sejam atendidos:
- Node.js 14 ou superior instalado na sua máquina de desenvolvimento.
- Uma conta Aspose Cloud com credenciais de cliente válidas (Client ID e Client Secret).
- Acesso à internet para chamadas de API.
Instale a biblioteca via npm e vincule a página de download para referência:
npm install aspose-barcode-cloud
# Download package details: https://releases.aspose.cloud/barcode/nodejs/
Após a instalação, crie um arquivo de configuração (por exemplo, config.json) para armazenar suas credenciais com segurança.
Parâmetros de Conversão: Opções e Configurações
A API de conversão aceita vários parâmetros opcionais que permitem ajustar finamente a saída:
delimiter- Escolha um caractere para separar os campos (padrão é,).options.delimiter = "\t"; // Tab‑delimited CSVencoding- Defina a codificação de caracteres para o arquivo CSV (por exemplo,UTF-8,ISO-8859-1).options.encoding = "UTF-8";outPath- Especifique uma pasta na nuvem onde os arquivos CSV serão armazenados.options.outPath = "converted";storage- Selecione o nome do armazenamento se você usar um serviço de armazenamento personalizado.options.storage = "MyCustomStorage";
Para obter uma lista completa de opções suportadas, veja a referência da API.
Dicas Práticas para Conversão Eficiente de XLS para CSV
- Transmitir Arquivos Grandes - Ative o modo de streaming para processar linhas em blocos e evitar alto consumo de memória.
- Usar uma Pasta Temporária - Grave arquivos CSV intermediários em uma pasta dedicada na nuvem e limpe-a após o download.
- Definir um Delimitador Apropriado - Se seus dados contiverem vírgulas, altere para um delimitador de tabulação ou pipe para evitar desalinhamento de colunas.
- Validar Após o Download - Verifique as primeiras linhas do CSV para garantir a codificação correta e o uso adequado do delimitador antes de prosseguir com o processamento.
Conclusão
A conversão de XLS para CSV em Node.JS torna‑se simples quando você aproveita os recursos do Aspose.BarCode Cloud SDK for Node.js. Este guia cobriu tudo, desde a configuração do ambiente e um exemplo completo em funcionamento até opções de configuração e práticas recomendadas orientadas ao desempenho. Lembre‑se de proteger suas credenciais de cliente, escolher streaming para pastas de trabalho grandes e limpar arquivos temporários para manter seu armazenamento em nuvem organizado. Para implantações em produção, você precisará de uma licença paga; você pode revisar os preços na página do produto e obter uma licença de avaliação temporária na página de licença temporária.
Perguntas Frequentes
Como a conversão de XLS para CSV no Node.JS lida com várias planilhas?
A biblioteca processa cada planilha sequencialmente, gerando um arquivo CSV separado para cada folha. Você pode mesclá-los posteriormente se for necessário um único CSV. Consulte o Aspose.BarCode Cloud SDK for Node.js para uso detalhado.
Posso transmitir arquivos XLS grandes para CSV sem carregar toda a pasta de trabalho na memória?
Sim. Ao habilitar a opção de streaming nos parâmetros de conversão, a API lê linhas em blocos gerenciáveis, mantendo o uso de memória baixo e o desempenho alto.
Qual licença é necessária para usar o Aspose.BarCode Cloud SDK for Node.js em produção?
É necessária uma licença comercial para uso em produção. As opções de compra estão listadas na página de preços do produto, e você pode solicitar uma licença de avaliação temporária na página de licença temporária.
É possível personalizar o delimitador CSV durante a conversão?
Com certeza. Defina a opção delimiter nos parâmetros de conversão para qualquer caractere que você precisar, como uma tabulação (\t) ou barra vertical (|). Isso garante que o CSV gerado corresponda às expectativas de processamento subsequente.