การแปลงข้อมูล Excel เป็น CSV เป็นความต้องการที่พบบ่อยเมื่อสร้าง data pipelines, เครื่องมือรายงาน หรือฟีเจอร์การนำเข้า/ส่งออก. 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 to CSV Conversion via Cloud API with cURL
คุณสามารถทำการแปลงเดียวกันโดยไม่ต้องเขียนโค้ดโดยใช้ cURL เพื่อเรียก REST endpoints การทำงานประกอบด้วยการรับรองความถูกต้อง การอัปโหลดไฟล์ การร้องขอการแปลง และการดาวน์โหลด
# 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 Setup - วัตถุ
Configurationจะเก็บข้อมูลประจำตัวของไคลเอนต์และ URL ฐานที่เป็นตัวเลือก วัตถุนี้จะถูกส่งไปยังอินสแตนซ์BarcodeApiconst config = new Configuration({ clientId, clientSecret }); const apiInstance = new BarcodeApi(config); - File Upload - เมธอด
uploadFileจะสตรีมไฟล์ XLS ภายในเครื่องไปยัง Aspose.BarCode cloud storage ทำให้ไฟล์พร้อมสำหรับการแปลงawait apiInstance.uploadFile({ path: inputFile, file: fileData }); - Conversion Call -
convertDocument(สมมติ) ส่งคำขอพร้อมชื่อไฟล์ต้นทาง, รูปแบบเป้าหมาย (csv), และตัวเลือกการแปลงเช่นตัวคั่นและการเข้ารหัส เซอร์วิสจะประมวลผลแต่ละ worksheet และสร้างไฟล์ CSV ที่สอดคล้องกันconst response = await apiInstance.convertDocument({ name: inputFile, format: "csv", options }); - Result Retrieval - หลังจากการแปลง,
getFilesListจะรายการไฟล์ CSV ที่สร้างขึ้นในโฟลเดอร์ผลลัพธ์ จากนั้นแต่ละไฟล์จะถูกดาวน์โหลดด้วยdownloadFileและบันทึกลงในเครื่องconst files = await apiInstance.getFilesList({ path: outputFolder }); const csvData = await apiInstance.downloadFile({ path: csvPath }); - Error Handling - ข้อผิดพลาดใด ๆ ของ API จะถูกจับในบล็อก
catchซึ่งคุณสามารถบันทึกรายละเอียดหรือดำเนินการตรวงกลับได้ สำหรับรายการรหัสข้อผิดพลาดทั้งหมด โปรดดูที่ API reference.
การเตรียมสภาพแวดล้อม - ข้อกำหนดเบื้องต้นและการตั้งค่า
ก่อนที่คุณจะเริ่มต้น, โปรดตรวจสอบให้แน่ใจว่าข้อกำหนดเบื้องต้นต่อไปนี้ได้รับการปฏิบัติ:
- 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 CSVencoding- กำหนดการเข้ารหัสอักขระสำหรับไฟล์ CSV (เช่นUTF-8,ISO-8859-1).options.encoding = "UTF-8";outPath- ระบุโฟลเดอร์บนคลาวด์ที่ไฟล์ CSV จะถูกจัดเก็บ.options.outPath = "converted";storage- เลือกชื่อที่เก็บข้อมูลหากคุณใช้บริการที่จัดเก็บแบบกำหนดเอง.options.storage = "MyCustomStorage";
สำหรับรายการตัวเลือกที่รองรับทั้งหมด ดูที่ API reference.
เคล็ดลับปฏิบัติสำหรับการแปลง 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 ที่สร้างขึ้นตรงกับความคาดหวังของการประมวลผลต่อเนื่องของคุณ.