Конвертування даних Excel у CSV часто потрібне при створенні конвеєрів даних, інструментів звітності або функцій імпорту/експорту. Aspose.BarCode Cloud SDK for Node.js надає потужну бібліотеку, яка робить конвертацію XLS у CSV у Node.JS простою та надійною. Цей посібник проведе вас через передумови, кроки встановлення, повний робочий приклад та рекомендації кращих практик, щоб ви могли впевнено інтегрувати конвертацію у ваш застосунок.
Повний робочий приклад конвертації XLS у CSV у Node.JS з використанням Aspose.BarCode
Цей приклад демонструє, як прочитати робочу книгу XLS із хмарного сховища, конвертувати кожен аркуш у CSV та передати результат назад клієнту.
// 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);
}
})();
Примітка: Цей приклад коду демонструє основну функціональність. Перш ніж використовувати його у вашому проєкті, переконайтеся, що оновили шляхи до файлів (
sample.xls,output), перевірили, що всі необхідні залежності правильно встановлені, і ретельно протестували у вашому середовищі розробки. Якщо ви зіткнетеся з будь‑якими проблемами, будь ласка, зверніться до офіційної документації або до команди підтримки за допомогою.
Конвертація XLS у CSV за допомогою Cloud API та cURL
Ви можете виконати ту ж конвертацію без написання коду, використовуючи cURL для виклику REST endpoint’ів. Процес складається з автентифікації, завантаження файлу, запиту на конвертацію та завантаження.
# 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"
Для отримання докладнішої інформації про параметри запиту, перегляньте офіційну документацію API.
Як працює конвертація XLS у CSV у Node.JS
- Налаштування конфігурації – Об’єкт
Configurationмістить ваші клієнтські облікові дані та необов’язковий базовий URL. Цей об’єкт передається екземпляруBarcodeApi.const config = new Configuration({ clientId, clientSecret }); const apiInstance = new BarcodeApi(config); - Завантаження файлу – Метод
uploadFileпередає локальний файл XLS у хмарне сховище Aspose.BarCode, роблячи його доступним для конвертації.await apiInstance.uploadFile({ path: inputFile, file: fileData }); - Виклик конвертації –
convertDocument(гіпотетичний) надсилає запит з іменем вихідного файлу, цільовим форматом (csv) та параметрами конвертації, такими як розділювач і кодування. Сервіс обробляє кожен лист і створює відповідні CSV‑файли.const response = await apiInstance.convertDocument({ name: inputFile, format: "csv", options }); - Отримання результату – Після конвертації
getFilesListповертає список створених CSV‑файлів у вихідній папці. Кожен файл потім завантажується за допомогоюdownloadFileі зберігається локально.const files = await apiInstance.getFilesList({ path: outputFolder }); const csvData = await apiInstance.downloadFile({ path: csvPath }); - Обробка помилок – Будь-яка помилка API перехоплюється у блоці
catch, де ви можете записати деталі або реалізувати логіку повторних спроб. Для повного списку кодів помилок зверніться до довідка API.
Підготовка середовища - Попередні вимоги та налаштування
Перш ніж розпочати, переконайтеся, що виконані наступні попередні вимоги:
- Node.js 14 або вище, встановлений на вашій машині розробки.
- Обліковий запис Aspose Cloud з дійсними клієнтськими обліковими даними (Client ID та Client Secret).
- Доступ до інтернету для викликів API.
Встановіть бібліотеку за допомогою npm і додайте посилання на сторінку завантаження для довідки:
npm install aspose-barcode-cloud
# Download package details: https://releases.aspose.cloud/barcode/nodejs/
Після встановлення створіть файл конфігурації (наприклад, config.json), щоб безпечно зберігати ваші облікові дані.
Параметри конвертації: Опції та налаштування
API конвертації приймає кілька необов’язкових параметрів, які дозволяють точно налаштувати результат:
delimiter- Виберіть символ для розділення полів (за замовчуванням,).
options.delimiter = "\t"; // Tab‑delimited CSV
encoding- Визначте кодування символів для CSV‑файлу (наприклад,UTF-8,ISO-8859-1).
options.encoding = "UTF-8";
outPath- Вкажіть хмарну папку, у якій будуть зберігатися CSV‑файли.
options.outPath = "converted";
storage- Виберіть назву сховища, якщо ви використовуєте власний сервіс сховища.
options.storage = "MyCustomStorage";
Для повного списку підтримуваних параметрів перегляньте довідка API.
Практичні поради щодо ефективного перетворення XLS у CSV
- Потокова обробка великих файлів - Увімкніть режим потокової обробки, щоб обробляти рядки частинами та уникнути великого споживання пам’яті.
- Використовуйте тимчасову папку - Записуйте проміжні CSV‑файли у спеціальну хмарну папку та видаляйте її після завантаження.
- Встановіть відповідний роздільник - Якщо ваші дані містять коми, перейдіть на табуляцію або роздільник‑трубу, щоб запобігти зміщенню стовпців.
- Перевірте після завантаження - Перегляньте кілька перших рядків CSV, щоб переконатися у правильному кодуванні та використанні роздільника перед подальшою обробкою.
Висновок
Конвертація XLS у CSV у Node.JS стає простою, коли ви використовуєте можливості Aspose.BarCode Cloud SDK for Node.js. У цьому посібнику розглянуто все: від налаштування середовища та повного робочого прикладу до параметрів конфігурації та найкращих практик, орієнтованих на продуктивність. Пам’ятайте про захист ваших клієнтських облікових даних, використовуйте потокову передачу для великих робочих книг і очищайте тимчасові файли, щоб підтримувати порядок у вашому хмарному сховищі. Для виробничих розгортань потрібна платна ліцензія; ви можете переглянути ціни на сторінці продукту та отримати тимчасову ліцензію оцінки на сторінці тимчасової ліцензії.
Питання та відповіді
Як конвертація XLS у CSV у Node.JS обробляє кілька листів?
Бібліотека обробляє кожен лист послідовно, створюючи окремий CSV‑файл для кожного листа. Ви можете об’єднати їх пізніше, якщо потрібен один CSV. Зверніться до Aspose.BarCode Cloud SDK for Node.js для докладного використання.
Чи можу я транслювати великі файли XLS у CSV без завантаження всього робочого зошита в пам’ять?
Так. Увімкнувши параметр потокової передачі у параметрах конвертації, API читає рядки у керованих блоках, підтримуючи низьке використання пам’яті та високу продуктивність.
Яке ліцензування потрібне для використання Aspose.BarCode Cloud SDK for Node.js у продакшн?
Для використання у продакшн потрібна комерційна ліцензія. Варіанти придбання зазначені на сторінці цін продукту, і ви можете запросити тимчасову оцінну ліцензію на сторінці тимчасової ліцензії.
Чи можна налаштувати роздільник CSV під час конвертації?
Звичайно. Встановіть параметр delimiter у параметрах конвертації на будь‑який потрібний символ, наприклад, табуляцію (\t) або вертикальну риску (|). Це забезпечить, щоб згенерований CSV відповідав вашим очікуванням щодо подальшої обробки.