Konvertering af Excel‑data til CSV er et hyppigt krav, når man bygger datapipelines, rapporteringsværktøjer eller import/eksport‑funktioner. Aspose.BarCode Cloud SDK for Node.js leverer et robust bibliotek, der gør XLS til CSV‑konvertering i Node.JS enkel og pålidelig. Denne guide fører dig gennem forudsætningerne, installationstrinnene, et komplet fungerende eksempel og best‑practice‑tips, så du kan integrere konverteringen i din applikation med selvtillid.
Fuld fungerende eksempel på XLS til CSV-konvertering i Node.JS ved hjælp af Aspose.BarCode
Dette eksempel demonstrerer, hvordan man læser en XLS-projektmappe fra cloud-lagring, konverterer hvert regneark til CSV og streamer resultatet tilbage til klienten.
// 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);
}
})();
Bemærk: Dette kodeeksempel demonstrerer kernefunktionaliteten. Før du bruger det i dit projekt, skal du sørge for at opdatere filstierne (
sample.xls,output), verificere 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.
XLS til CSV-konvertering via Cloud API med cURL
Du kan udføre den samme konvertering uden at skrive kode ved at bruge cURL til at kalde REST-endpoints. Flowet består af godkendelse, filupload, konverteringsanmodning og 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"
For flere detaljer om anmodningsparametre, se den officielle API-dokumentation.
Sådan fungerer XLS til CSV-konvertering i Node.JS
- Konfigurationsopsætning - Et
Configuration-objekt indeholder dine klientoplysninger og en valgfri basis-URL. Dette objekt videregives tilBarcodeApi-instansen.const config = new Configuration({ clientId, clientSecret }); const apiInstance = new BarcodeApi(config); - Filupload -
uploadFile-metoden streamer den lokale XLS-fil til Aspose.BarCode cloud-lagring, så den er tilgængelig for konvertering.await apiInstance.uploadFile({ path: inputFile, file: fileData }); - Konverteringskald -
convertDocument(hypotetisk) sender en anmodning med kildefilens navn, målformat (csv) og konverteringsindstillinger såsom skilletegn og kodning. Tjenesten behandler hvert regneark og opretter tilsvarende CSV-filer.const response = await apiInstance.convertDocument({ name: inputFile, format: "csv", options }); - Resultatindhentning - Efter konvertering lister
getFilesListde genererede CSV-filer i output-mappen. Hver fil downloades derefter meddownloadFileog gemmes lokalt.const files = await apiInstance.getFilesList({ path: outputFolder }); const csvData = await apiInstance.downloadFile({ path: csvPath }); - Fejlhåndtering - Enhver API-fejl fanges i
catch-blokken, hvor du kan logge detaljer eller implementere genforsøgslogik. For en komplet liste over fejlkoder, se API-referencen.
Miljøforberedelse - Forudsætninger og opsætning
Før du starter, skal du sikre, at følgende forudsætninger er opfyldt:
- Node.js 14 eller højere installeret på din udviklingsmaskine.
- En Aspose Cloud-konto med gyldige klientoplysninger (Client ID og Client Secret).
- Adgang til internettet for API‑opkald.
Installer biblioteket via npm og link til download‑siden for reference:
npm install aspose-barcode-cloud
# Download package details: https://releases.aspose.cloud/barcode/nodejs/
Efter installationen skal du oprette en konfigurationsfil (f.eks. config.json) for at gemme dine legitimationsoplysninger sikkert.
Konverteringsparametre: Indstillinger og muligheder
Konverterings‑API’en accepterer flere valgfrie parametre, som giver dig mulighed for at finjustere outputtet:
delimiter- Vælg et tegn til at adskille felter (standard er,).
options.delimiter = "\t"; // Tab‑delimited CSV
encoding- Angiv tegnkodningen for CSV-filen (f.eks.UTF-8,ISO-8859-1).
options.encoding = "UTF-8";
outPath- Angiv en cloud-mappe, hvor CSV-filerne skal gemmes.
options.outPath = "converted";
storage- Vælg lagernavnet, hvis du bruger en brugerdefineret lagertjeneste.
options.storage = "MyCustomStorage";
For en komplet liste over understøttede indstillinger, se API-referencen.
Praktiske tips til effektiv XLS til CSV-konvertering
- Stream store filer - Aktiver streaming-tilstand for at behandle rækker i bidder og undgå høj hukommelsesforbrug.
- Brug en midlertidig mappe - Skriv mellemliggende CSV-filer til en dedikeret cloud-mappe og ryd den op efter download.
- Angiv en passende afgrænser - Hvis dine data indeholder kommaer, skift til en tabulator- eller pipe-afgrænser for at forhindre kolonnefejl.
- Valider efter download - Tjek de første par rækker i CSV-filen for at sikre korrekt kodning og brug af afgrænser, inden du fortsætter behandlingen.
Konklusion
XLS til CSV-konvertering i Node.JS bliver ligetil, når du udnytter funktionerne i Aspose.BarCode Cloud SDK for Node.js. Denne vejledning dækkede alt fra miljøopsætning og et komplet fungerende eksempel til konfigurationsmuligheder og ydeevneorienterede bedste praksisser. Husk at sikre dine klientoplysninger, vælge streaming for store arbejdsbøger og rydde midlertidige filer for at holde din cloud-lagring ryddelig. Til produktionsimplementeringer har du brug for en betalt licens; du kan gennemgå priser på produktsiden og få en midlertidig evalueringslicens fra den midlertidige licensside.
Ofte stillede spørgsmål
Hvordan håndterer XLS til CSV-konvertering i Node.JS flere regneark?
Biblioteket behandler hvert regneark sekventielt og genererer en separat CSV-fil for hvert ark. Du kan senere sammenlægge dem, hvis der kun skal være én CSV. Se Aspose.BarCode Cloud SDK for Node.js for detaljeret brug.
Kan jeg streame store XLS-filer til CSV uden at indlæse hele projektmappen i hukommelsen?
Ja. Ved at aktivere streaming-indstillingen i konverteringsparametrene læser API’et rækker i håndterbare portioner, hvilket holder hukommelsesforbruget lavt og ydeevnen høj.
Hvilken licens kræves for at bruge Aspose.BarCode Cloud SDK for Node.js i produktion?
En kommerciel licens er påkrævet til produktionsbrug. Købsoptioner er angivet på produktets prisside, og du kan anmode om en midlertidig evalueringslicens fra midlertidig licensside.
Er det muligt at tilpasse CSV‑separatoren under konvertering?
Absolut. Indstil delimiter‑optionen i konverteringsparametrene til et hvilket som helst tegn, du har brug for, såsom en tabulator (\t) eller en lodret streg (|). Dette sikrer, at den genererede CSV matcher dine efterfølgende behandlingsforventninger.