CSV és XLSX konverzió Java-ban gyakori igény, amikor az alkalmazásoknak adatcserét kell végezniük Excel felhasználókkal. Az Aspose.HTML Cloud SDK for Java egy erőteljes felhőalapú API-t biztosít, amely hatékonyan kezeli ezt az átalakítást. Ebben az útmutatóban megmutatjuk, hogyan állítsuk be a Maven függőséget, hogyan olvassuk be a CSV adatokat stream-ekkel, hogyan generáljunk egy XLSX munkafüzetet, és hogyan hívjuk meg a konverziót a REST API-n keresztül. A végére egy teljes, termelésre kész példát kap, amelyet saját projektjeihez adaptálhat.
Előfeltételek és beállítás
Mielőtt elkezdené, győződjön meg arról, hogy a következőkkel rendelkezik:
- Java 17 vagy újabb telepítve.
- Aspose Cloud fiók ügyfél-azonosítóval és ügyfél-titokkal.
- Maven telepítve a függőségkezeléshez.
Adja hozzá az Aspose.HTML Cloud SDK for Java-t a projektjéhez:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-html-cloud</artifactId>
<version>23.12</version>
</dependency>
Alternatív megoldásként a csomagot közvetlenül a parancssorból telepítheti:
mvn install com.aspose:aspose-html-cloud
Töltse le a legújabb SDK bináris fájlokat a letöltési oldal címről. Miután a függőség feloldásra került, készen áll a kódolás megkezdésére. A következő szakasz lépésről lépésre végigvezeti a megvalósításon.
CSV átalakítása XLSX formátumba Java-ban: Lépésről lépésre útmutató
1. lépés: A forrás CSV betöltése Java Streams használatával
A CSV soronkénti olvasása alacsony memóriahasználatot biztosít, ami nagy fájlok esetén elengedhetetlen.
Path csvPath = Paths.get("input.csv");
List<String> csvLines = Files.readAllLines(csvPath, StandardCharsets.UTF_8);
2. lépés: Inicializálja a Aspose.HTML Cloud Client
Hozzon létre egy kliens példányt a hitelesítő adataival. A kliens osztály dokumentálva van az API referenciában.
HtmlApi htmlApi = new HtmlApi();
htmlApi.getConfiguration().setClientId("YOUR_CLIENT_ID");
htmlApi.getConfiguration().setClientSecret("YOUR_CLIENT_SECRET");
3. lépés: CSV tartalom konvertálása XLSX-be
Az SDK a CSV adatokat karakterláncként fogadja, és bináris XLSX adatfolyamot ad vissza.
String csvContent = String.join("\n", csvLines);
ConvertDocumentRequest request = new ConvertDocumentRequest()
.outputFormat("xlsx")
.inputFileContent(csvContent.getBytes(StandardCharsets.UTF_8));
byte[] xlsxBytes = htmlApi.convertDocument(request);
4. lépés: Az eredmény XLSX fájl mentése
Írja a visszakapott bájt tömböt egy fájlba a lemezen.
Path xlsxPath = Paths.get("output.xlsx");
Files.write(xlsxPath, xlsxBytes);
5. lépés: A konverzió ellenőrzése (Opcionális)
Gyorsan megnyithatja a generált fájlt az Apache POI-val vagy bármely táblázatkezelő nézővel, hogy biztosítsa az adatok helyes formázását.
Teljes kódrészlet: CSV‑ről XLSX‑re konvertálás az Aspose.HTML Cloud SDK használatával
Az alábbi program egyetlen, futtatható osztályba foglalja össze az összes lépést.
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());
}
}
Megjegyzés: Ez a kódrészlet a fő funkciót mutatja be. Mielőtt a projektjében használná, győződjön meg róla, hogy frissítette a fájl útvonalakat (
input.csv,output.xlsx), ellenőrizze, hogy minden szükséges függőség megfelelően telepítve van, és alaposan tesztelje a fejlesztői környezetben. Ha problémákba ütközik, kérjük, tekintse meg a hivatalos dokumentációt vagy lépjen kapcsolatba a támogatási csapattal segítségért.
cURL használata az Aspose.HTML Cloud hívásához XLSX generáláshoz
Ugyanez a konverzió a REST API-n keresztül is elvégezhető. Az alábbiakban a szükséges cURL parancsok találhatók.
- Hitelesítés és hozzáférési token lekérése
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 válasz tartalmaz egy access_token-t, amelyet a későbbi hívások során használni fog.
- Töltsd fel a CSV fájlt
curl -X POST "https://api.aspose.cloud/v4.0/html/storage/file/input.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@input.csv"
- A konverzió végrehajtása
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
- Töltse le az XLSX fájlt (ha másik kimeneti helyet választott)
curl -X GET "https://api.aspose.cloud/v4.0/html/storage/file/output.xlsx" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-o output.xlsx
A paraméterek teljes listájáért tekintse meg a hivatalos API dokumentációt.
Teljesítménybeli megfontolások nagy CSV‑ról XLSX‑re konverziók esetén
- CSV bemenet streamelése - Használja a
Files.linesvagy egy pufferelt olvasót, hogy soronként dolgozza fel a sorokat a teljes fájl memóriába betöltése helyett. - Kötegelt feltöltések - Ha 100 MB-nál nagyobb fájlokkal dolgozik, bontsa fel a CSV-t kisebb darabokra, és konvertálja őket külön-külön, majd szükség esetén egyesítse a kapott XLSX részeket.
- Aszinkron konverzió engedélyezése - Adja hozzá az
async=truelekérdezési paramétert a konverziós kéréshez, hogy a felhőszolgáltatás a háttérben dolgozza fel a fájlt, csökkentve a kliensoldali várakozási időt. - Kimeneti beállítások módosítása - Állítsa a
preserveFormattingjelzőtfalse-ra, ha nem szükséges a pontos cell stílus; ez csökkenti a payload méretét és felgyorsítja a konverziót.
Összegzés
Ez az útmutató bemutatta, hogyan lehet CSV‑t XLSX‑re konvertálni Java‑ban az Aspose.HTML Cloud SDK for Java. Megtanultad, hogyan konfiguráld a Maven‑t, olvasd be a CSV adatokat streamekkel, hívd meg a felhő API‑t, és kezeld hatékonyan a nagy fájlokat. Ne feledd, hogy a termelésben való használathoz kereskedelmi licenc szükséges; ideiglenes licencet szerezhetsz be az ideiglenes licenc oldalról, és áttekintheted a teljes árazási lehetőségeket a termékoldalon. Ezekkel az eszközökkel zökkenőmentes CSV‑t XLSX‑re konvertáló funkciót integrálhatsz bármely Java alkalmazásba.
GYIK
-
Mi a legjobb módja annak, hogy a CSV fájlokban, amelyek idézőjelek közé tett mezőket tartalmaznak, a vesszőket kezeljük?
Használjon robusztus CSV elemzőt, például az Apache Commons CSV-t, mielőtt az adatokat átadná a konverziós API-nak. Az elemző tiszteletben tartja az idézett határolókat, biztosítva a pontos sorok kinyerését. -
Támogatja-e az Aspose.HTML Cloud SDK az XLSX kimenetet közbenső HTML lépés nélkül?
Igen. AconvertDocumentmetódus képes nyers CSV tartalmat elfogadni, és közvetlenül XLSX fájlt előállítani, ahogyan a kódrészletekben látható. -
Futtathatom a konverziót helyben a felhő használata nélkül?
Az Aspose.HTML Cloud SDK felhőalapú szolgáltatás, ezért internetkapcsolat és érvényes hitelesítő adatok szükségesek. Helyi (on‑premise) forgatókönyvekhez vegye figyelembe az Aspose.Cells-t, amely egy különálló termék. -
Hogyan figyelhetem egy aszinkron konverziós kérés állapotát?
Az API egy job ID-t ad vissza, ha azasync=trueparamétert használják. Poll-olja a/jobs/{jobId}végpontot az állapot ellenőrzéséhez, majd töltse le az eredményt, amikor a feladat befejeződik.