CSV til XLSX konvertering i Java er et hyppigt krav, når applikationer skal udveksle data med Excel‑brugere. Aspose.HTML Cloud SDK for Java leverer et kraftfuldt cloud‑baseret API, der håndterer denne transformation effektivt. I denne vejledning vil du se, hvordan du opsætter Maven‑afhængigheden, læser CSV‑data med streams, genererer en XLSX‑arbejdsbog og kalder konverteringen via REST‑API‑et. Når du er færdig, har du et komplet, produktionsklart eksempel, som du kan tilpasse til dine egne projekter.
Forudsætninger og opsætning
Før du starter, skal du sikre dig, at du har følgende:
- Java 17 eller nyere installeret.
- En Aspose Cloud-konto med klient‑ID og klienthemmelighed.
- Maven installeret til afhængighedsstyring.
Tilføj Aspose.HTML Cloud SDK for Java til dit projekt:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html-cloud</artifactId>
<version>23.12</version>
</dependency>
Alternativt kan du installere pakken direkte fra kommandolinjen:
mvn install com.aspose:aspose-html-cloud
Download de nyeste SDK-binære filer fra download-siden. Når afhængigheden er løst, er du klar til at begynde at kode. Næste afsnit guider dig gennem implementeringen trin for trin.
CSV til XLSX-konvertering i Java: Trin-for-trin gennemgang
Trin 1: Indlæs kilde‑CSV‑filen ved hjælp af Java Streams
At læse CSV-filen linje for linje holder hukommelsesforbruget lavt, hvilket er vigtigt for store filer.
Path csvPath = Paths.get("input.csv");
List<String> csvLines = Files.readAllLines(csvPath, StandardCharsets.UTF_8);
Trin 2: Initialiser Aspose.HTML Cloud‑klienten
Opret en klientinstans med dine legitimationsoplysninger. Klientklassen er dokumenteret i API‑referencen.
HtmlApi htmlApi = new HtmlApi();
htmlApi.getConfiguration().setClientId("YOUR_CLIENT_ID");
htmlApi.getConfiguration().setClientSecret("YOUR_CLIENT_SECRET");
Trin 3: Konverter CSV-indhold til XLSX
SDK’en accepterer CSV-data som en streng og returnerer en binær XLSX-strøm.
String csvContent = String.join("\n", csvLines);
ConvertDocumentRequest request = new ConvertDocumentRequest()
.outputFormat("xlsx")
.inputFileContent(csvContent.getBytes(StandardCharsets.UTF_8));
byte[] xlsxBytes = htmlApi.convertDocument(request);
Trin 4: Gem den resulterende XLSX-fil
Skriv den returnerede byte-array til en fil på disken.
Path xlsxPath = Paths.get("output.xlsx");
Files.write(xlsxPath, xlsxBytes);
Trin 5: Bekræft konverteringen (valgfrit)
Du kan hurtigt åbne den genererede fil med Apache POI eller en hvilken som helst regnearksviser for at sikre, at dataene er korrekt formateret.
Komplet kodeeksempel: CSV til XLSX konvertering med Aspose.HTML Cloud SDK
Det følgende program samler alle trin i en enkelt, kørbar klasse.
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());
}
}
Bemærk: Dette kodeeksempel demonstrerer kernefunktionaliteten. Før du bruger det i dit projekt, skal du sørge for at opdatere filstierne (
input.csv,output.xlsx), bekræfte at alle nødvendige afhængigheder er korrekt installeret, og teste grundigt i dit udviklingsmiljø. Hvis du støder på problemer, så henvis til den officielle dokumentation eller kontakt supportteamet for assistance.
Brug af cURL til at kalde Aspose.HTML Cloud for XLSX-generering
Den samme konvertering kan udføres via REST API’et. Nedenfor er de nødvendige cURL‑kommandoer.
- Godkend og få adgangstoken
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"
Svaret indeholder en access_token, som du vil bruge i efterfølgende kald.
- Upload CSV-filen
curl -X POST "https://api.aspose.cloud/v4.0/html/storage/file/input.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@input.csv"
- Udfør konverteringen
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
- Download XLSX-filen (hvis du valgte en anden outputplacering)
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/output.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
For en komplet liste over parametre, se den officielle API-dokumentation.
Ydeevneovervejelser ved store CSV til XLSX konverteringer
- Stream CSV‑indgangen - Brug
Files.lineseller en bufferlæser til at behandle rækker én ad gangen i stedet for at indlæse hele filen i hukommelsen. - Batch‑uploads - Når du arbejder med filer større end 100 MB, del CSV‑filen i mindre bidder og konverter hver bid separat, og sammensæt derefter de resulterende XLSX‑dele om nødvendigt.
- Aktiver asynkron konvertering - Tilføj forespørgselsparameteren
async=truetil konverteringsanmodningen, så cloud‑tjenesten kan behandle filen i baggrunden, hvilket reducerer ventetiden på klientsiden. - Juster outputindstillinger - Sæt flaget
preserveFormattingtilfalse, hvis du ikke har brug for nøjagtige celle‑stile; dette reducerer payload‑størrelsen og fremskynder konverteringen.
Konklusion
Dette guide demonstrerede, hvordan man udfører CSV‑to‑XLSX konvertering i Java ved hjælp af Aspose.HTML Cloud SDK for Java. Du lærte, hvordan du konfigurerer Maven, læser CSV‑data med streams, kalder cloud‑API’et og håndterer store filer effektivt. Husk, at en kommerciel licens kræves til produktionsbrug; du kan få en midlertidig licens fra midlertidig licensside og gennemgå de fulde prisindstillinger på produktsiden. Med disse værktøjer kan du integrere problemfri CSV‑to‑XLSX funktionalitet i enhver Java‑applikation.
Ofte stillede spørgsmål
-
Hvad er den bedste måde at håndtere CSV-filer, der indeholder kommaer inden for citerede felter?
Brug en robust CSV-parser som Apache Commons CSV, før du sender dataene til konverterings-API’en. Parseren respekterer citerede skilletegn, hvilket sikrer nøjagtig rækkektraktion. -
Understøtter Aspose.HTML Cloud SDK XLSX-output uden et mellemliggende HTML trin?
Ja. MetodenconvertDocumentkan acceptere rå CSV-indhold og direkte producere en XLSX-fil, som vist i kodeeksemplerne. -
Kan jeg køre konverteringen lokalt uden at bruge skyen?
Aspose.HTML Cloud SDK er en cloud‑baseret tjeneste, så en internetforbindelse og gyldige legitimationsoplysninger er påkrævet. For on‑premise‑scenarier kan du overveje Aspose.Cells, som er et separat produkt. -
Hvordan overvåger jeg status for en asynkron konverteringsanmodning?
API’en returnerer et job‑ID, nårasync=truebruges. Poll/jobs/{jobId}-endpointet for at kontrollere status, og download resultatet, når jobbet er færdigt.