CSV para XLSX conversão em Java é uma necessidade frequente quando as aplicações precisam trocar dados com usuários do Excel. O Aspose.HTML Cloud SDK for Java fornece uma API poderosa baseada em nuvem que lida com essa transformação de forma eficiente. Neste guia você verá como configurar a dependência Maven, ler dados CSV com streams, gerar uma pasta de trabalho XLSX e invocar a conversão através da API REST. Ao final, você terá um exemplo completo e pronto para produção que pode adaptar aos seus próprios projetos.

Pré-requisitos e Configuração

Antes de começar, certifique‑se de que você tem o seguinte:

  • Java 17 ou posterior instalado.
  • Uma conta Aspose Cloud com ID do cliente e segredo do cliente.
  • Maven instalado para gerenciamento de dependências.

Adicione o Aspose.HTML Cloud SDK for Java ao seu projeto:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-html-cloud</artifactId>
    <version>23.12</version>
</dependency>

Alternativamente, você pode instalar o pacote diretamente a partir da linha de comando:

mvn install com.aspose:aspose-html-cloud

Baixe os binários mais recentes do SDK na página de download. Depois que a dependência for resolvida, você está pronto para começar a codificar. A próxima seção orienta você passo a passo na implementação.

Conversão de CSV para XLSX em Java: Guia passo a passo

Etapa 1: Carregar o CSV de origem usando Java Streams

Ler o CSV linha por linha mantém o uso de memória baixo, o que é essencial para arquivos grandes.

Path csvPath = Paths.get("input.csv");
List<String> csvLines = Files.readAllLines(csvPath, StandardCharsets.UTF_8);

Etapa 2: Inicializar o cliente Aspose.HTML Cloud

Crie uma instância de cliente com suas credenciais. A classe do cliente está documentada na referência da API.

HtmlApi htmlApi = new HtmlApi();
htmlApi.getConfiguration().setClientId("YOUR_CLIENT_ID");
htmlApi.getConfiguration().setClientSecret("YOUR_CLIENT_SECRET");

Etapa 3: Converter conteúdo CSV para XLSX

O SDK aceita os dados CSV como uma string e retorna um fluxo binário XLSX.

String csvContent = String.join("\n", csvLines);
ConvertDocumentRequest request = new ConvertDocumentRequest()
        .outputFormat("xlsx")
        .inputFileContent(csvContent.getBytes(StandardCharsets.UTF_8));
byte[] xlsxBytes = htmlApi.convertDocument(request);

Etapa 4: Salvar o Arquivo XLSX Resultante

Escreva o array de bytes retornado em um arquivo no disco.

Path xlsxPath = Paths.get("output.xlsx");
Files.write(xlsxPath, xlsxBytes);

Etapa 5: Verificar a Conversão (Opcional)

Você pode abrir rapidamente o arquivo gerado com o Apache POI ou qualquer visualizador de planilhas para garantir que os dados estejam formatados corretamente.

Exemplo de Código Completo: Conversão de CSV para XLSX com Aspose.HTML Cloud SDK

O programa a seguir reúne todas as etapas em uma única classe executável.

import java.nio.file.*;
import java.nio.charset.StandardCharsets;
import java.util.List;
import com.aspose.html.cloud.api.HtmlApi;
import com.aspose.html.cloud.model.ConvertDocumentRequest;

public class CsvToXlsxConverter {
    public static void main(String[] args) throws Exception {
        // 1. Load CSV file
        Path csvPath = Paths.get("input.csv");
        List<String> csvLines = Files.readAllLines(csvPath, StandardCharsets.UTF_8);
        String csvContent = String.join("\n", csvLines);

// 2. Initialise Aspose.HTML Cloud client
        HtmlApi htmlApi = new HtmlApi();
        htmlApi.getConfiguration().setClientId("YOUR_CLIENT_ID");
        htmlApi.getConfiguration().setClientSecret("YOUR_CLIENT_SECRET");

// 3. Convert CSV to XLSX
        ConvertDocumentRequest request = new ConvertDocumentRequest()
                .outputFormat("xlsx")
                .inputFileContent(csvContent.getBytes(StandardCharsets.UTF_8));
        byte[] xlsxBytes = htmlApi.convertDocument(request);

// 4. Save XLSX file
        Path xlsxPath = Paths.get("output.xlsx");
        Files.write(xlsxPath, xlsxBytes);

System.out.println("Conversion completed. XLSX saved to " + xlsxPath.toAbsolutePath());
    }
}

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 (input.csv, output.xlsx), verifique se todas as dependências necessárias estão devidamente 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.

Usando cURL para chamar Aspose.HTML Cloud para geração de XLSX

A mesma conversão pode ser realizada via a API REST. Abaixo estão os comandos cURL necessários.

  1. Autenticar e Obter Token de Acesso
curl -X POST "https://api.aspose.cloud/connect/token" \
     -H "Content-Type: application/x-www-form-urlencoded" \
     -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"

A resposta contém um access_token que você usará nas chamadas subsequentes.

  1. Carregar o arquivo CSV
curl -X POST "https://api.aspose.cloud/v4.0/html/storage/file/input.csv" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -F "file=@input.csv"
  1. Execute a Conversão
curl -X POST "https://api.aspose.cloud/v4.0/html/convert?outputFormat=xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"inputPath":"input.csv"}' \
     -o output.xlsx
  1. Baixe o arquivo XLSX (se você escolheu um local de saída diferente)
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/output.xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output.xlsx

Para uma lista completa de parâmetros, veja a documentação oficial da API.

Considerações de Desempenho para Conversões de CSV Grandes para XLSX

  • Transmitir a Entrada CSV - Use Files.lines ou um leitor buffered para processar linhas uma de cada vez em vez de carregar o arquivo inteiro na memória.
  • Envios em Lote - Ao lidar com arquivos maiores que 100 MB, divida o CSV em partes menores e converta cada parte separadamente, depois mescle as partes XLSX resultantes, se necessário.
  • Habilitar Conversão Assíncrona - Anexe o parâmetro de consulta async=true à solicitação de conversão para que o serviço em nuvem processe o arquivo em segundo plano, reduzindo o tempo de espera do cliente.
  • Ajustar Configurações de Saída - Defina o sinalizador preserveFormatting como false se você não precisar de estilos de célula exatos; isso reduz o tamanho da carga útil e acelera a conversão.

Conclusão

Este guia demonstrou como realizar a conversão de CSV para XLSX em Java usando o Aspose.HTML Cloud SDK for Java. Você aprendeu como configurar o Maven, ler dados CSV com streams, chamar a API da nuvem e lidar com arquivos grandes de forma eficiente. Lembre‑se de que uma licença comercial é necessária para uso em produção; você pode obter uma licença temporária na página de licença temporária e revisar as opções completas de preços na página do produto. Com essas ferramentas em mãos, você pode integrar funcionalidade de CSV‑para‑XLSX sem interrupções em qualquer aplicação Java.

FAQs

  • Qual é a melhor maneira de lidar com arquivos CSV que contêm vírgulas dentro de campos entre aspas?
    Use um analisador CSV robusto, como o Apache Commons CSV, antes de enviar os dados para a API de conversão. O analisador respeita delimitadores entre aspas, garantindo a extração precisa das linhas.

  • O Aspose.HTML Cloud SDK suporta saída XLSX sem uma etapa intermediária de HTML?
    Sim. O método convertDocument pode aceitar conteúdo CSV bruto e gerar diretamente um arquivo XLSX, como mostrado nos exemplos de código.

  • Posso executar a conversão localmente sem usar a nuvem?
    O Aspose.HTML Cloud SDK é um serviço baseado em nuvem, portanto é necessária uma conexão à internet e credenciais válidas. Para cenários on‑premise, considere o Aspose.Cells, que é um produto separado.

  • Como monitorar o status de uma solicitação de conversão assíncrona?
    A API retorna um ID de trabalho quando async=true é usado. Interrogue o endpoint /jobs/{jobId} para verificar o status e, em seguida, faça o download do resultado quando o trabalho for concluído.

Leia Mais