تبدیل دادههای CSV به فایلهای ساده TXT یک نیاز مکرر هنگام ساخت خطوط لوله داده، ابزارهای گزارشگیری یا استخراجکنندههای لاگ ساده است. Aspose.Cells Cloud SDK for Node.js یک کتابخانه قدرتمند فراهم میکند که بار سنگین تبدیل فرمت را در سمت سرور بر عهده میگیرد. در این راهنما شما یاد خواهید گرفت که چگونه تبدیل CSV به TXT را در Node.JS گام به گام انجام دهید، به رویکرد REST مبتنی بر cURL نگاهی بیندازید، گزینههای رمزگذاری را تنظیم کنید و بهترین شیوههای عملکرد را اعمال کنید.
نیازهای تبدیل CSV به TXT
توسعهدهندگان اغلب نیاز دارند دادههای CSV به سبک صفحهگسترده را به فایلهای TXT خام تبدیل کنند تا برای سیستمهای پاییندستی که انتظار متن خطبهخط بدون کاما را دارند، مناسب باشد. نیازهای معمول شامل:
- پردازش با حجم بالا - توانایی پردازش فایلهای بزرگ بدون بارگذاری کل محتوا در حافظه.
- رمزگذاری سفارشی کاراکتر - بسیاری از سیستمهای قدیمی به UTF‑8، ISO‑8859‑1 یا سایر رمزگذاریهای خاص نیاز دارند.
- اتوماسیون - تبدیل باید از یک بکاند Node.JS قابل فراخوانی باشد بدون نیاز به مداخله دستی.
استفاده از اسکریپتهای عمومی فایلسیستم میتواند به سرعت مستعد خطا شود، بهویژه هنگام کار با رمزگذاریهای مختلف یا زمانی که برنامه در محیط ابری اجرا میشود و دسترسی به فایلهای محلی محدود است.
Choosing Aspose.Cells Cloud SDK for Node.js for the Job
Aspose.Cells Cloud SDK for Node.js یک API مبتنی بر REST‑driven ارائه میدهد که در ابر اجرا میشود و نیاز به نصبهای محلی Office را از بین میبرد. قابلیتهای کلیدی که با نیازها مطابقت دارند عبارتند از:
- پشتیبانی از استریم - فایلها بهعنوان استریم بارگذاری و دانلود میشوند و مصرف حافظه را کاهش میدهند.
- کنترل رمزگذاری - کلاس TxtSaveOptions به شما امکان میدهد هر رمزگذاری متنی پشتیبانیشدهای را مشخص کنید.
- طراحی آماده برای دستهای - میتوانید تبدیل را در حلقهها یا جریانهای کاری ناهمزمان فراخوانی کنید.
SDK بهصورت یکپارچه با سایر سرویسهای Aspose ادغام میشود و مستندات جامع مستندات و مرجع API راهنماییهای تفصیلی برای هر متدی که در این آموزش استفاده شده است، ارائه میدهند.
CSV به TXT در Node.JS: پیادهسازی
در زیر یک مرور مختصر از کل فرآیند ارائه شده است. هر مرحله شامل یک قطعه کد کوتاه است که مستقیماً از مثال کامل که در ادامه مقاله آمده است، گرفته شده است.
نصب SDK و پیکربندی اعتبارنامهها
اول، کتابخانه را به پروژه خود اضافه کنید و کلاینت API را با شناسه مشتری و رمز عبور خود تنظیم کنید.
npm install asposecellscloud
const { CellsApi, ApiClient, model } = require('asposecellscloud');
const clientId = 'YOUR_CLIENT_ID';
const clientSecret = 'YOUR_CLIENT_SECRET';
const config = new ApiClient.Configuration({
clientId,
clientSecret,
basePath: 'https://api.aspose.cloud'
});
const cellsApi = new CellsApi(config);
<!--[CODE_SNIPPET_END]-->
### Upload CSV File to Cloud Storage
Read the local CSV file and upload it to Aspose Cloud storage.
<!--[CODE_SNIPPET_START]-->
```javascript
const [fs](https://docs.fileformat.com/programming/fs/) = require('fs');
const path = require('path');
const localCsvPath = path.resolve(__dirname, 'sample.csv');
const remoteCsvPath = 'sample.csv';
const csvData = fs.readFileSync(localCsvPath);
const uploadRequest = new model.UploadFileRequest({ path: remoteCsvPath, file: csvData }); await cellsApi.uploadFile(uploadRequest);
<!--[CODE_SNIPPET_END]-->
### تعریف گزینههای ذخیرهسازی TXT با رمزگذاری سفارشی
یک شیء TxtSaveOptions ایجاد کنید تا رمزگذاری UTF‑8 (یا هر رمزگذاری دیگری که نیاز دارید) را مشخص کنید.
<!--[CODE_SNIPPET_START]-->
```javascript
const txtSaveOptions = new model.TxtSaveOptions({
encoding: 'utf-8' // custom encoding
});
<!--[CODE_SNIPPET_END]-->
### تبدیل کتابکار از CSV به TXT
درخواست تبدیل را فراخوانی کنید و نام CSV راه دور و گزینههای TXT را پاس دهید.
<!--[CODE_SNIPPET_START]-->
```javascript
const convertRequest = new model.ConvertWorkbookRequest({
name: remoteCsvPath,
format: 'txt',
outPath: '',
options: txtSaveOptions
});
const convertResponse = await cellsApi.convertWorkbook(convertRequest);
<!--[CODE_SNIPPET_END]-->
### بارگیری نتیجه TXT و پاکسازی فایل راه دور
محتوای تبدیلشده TXT را در یک فایل محلی بنویسید و بهصورت اختیاری منبع CSV را از ذخیرهسازی ابری حذف کنید.
<!--[CODE_SNIPPET_START]-->
```javascript
const localTxtPath = path.resolve(__dirname, 'sample.txt');
fs.writeFileSync(localTxtPath, convertResponse.body);
const deleteRequest = new model.DeleteFileRequest({ path: remoteCsvPath });
await cellsApi.deleteFile(deleteRequest);
console.log('CSV successfully converted to TXT at:', localTxtPath);
مثال کامل کد: CSV به TXT در Node.JS با استفاده از Aspose.Cells
کد زیر کل جریان کار را از ابتدا تا انتها نشان میدهد.
const { CellsApi, ApiClient, model } = require('asposecellscloud');
const fs = require('fs');
const path = require('path');
(async () => { // ==== Configuration ==== const clientId = ‘YOUR_CLIENT_ID’; const clientSecret = ‘YOUR_CLIENT_SECRET’; const config = new ApiClient.Configuration({ clientId, clientSecret, basePath: ‘https://api.aspose.cloud’ }); const cellsApi = new CellsApi(config); });
// ==== مسیرهای فایل ====
const localCsvPath = path.resolve(__dirname, 'sample.csv'); // CSV ورودی
const remoteCsvPath = 'sample.csv'; // مسیر در ذخیرهسازی Aspose Cloud
const localTxtPath = path.resolve(__dirname, 'sample.txt'); // TXT خروجی
// ==== Upload CSV to cloud storage ==== const csvData = fs.readFileSync(localCsvPath); const uploadRequest = new model.UploadFileRequest({ path: remoteCsvPath, file: csvData }); await cellsApi.uploadFile(uploadRequest);
// ==== Prepare TXT save options with custom encoding ==== const txtSaveOptions = new model.TxtSaveOptions({ encoding: ‘utf-8’ // custom encoding });
// ==== Convert CSV to TXT ====
const convertRequest = new model.ConvertWorkbookRequest({
name: remoteCsvPath,
format: 'txt',
outPath: '',
options: txtSaveOptions
});
const convertResponse = await cellsApi.convertWorkbook(convertRequest);
// ==== فایل TXT تبدیلشده را بهصورت محلی ذخیره کنید ==== fs.writeFileSync(localTxtPath, convertResponse.body);
// ==== Clean up remote file (optional) ==== const deleteRequest = new model.DeleteFileRequest({ path: remoteCsvPath }); await cellsApi.deleteFile(deleteRequest);
console.log(‘CSV successfully converted to TXT at:’, localTxtPath); })();
<!--[COMPLETE_CODE_SNIPPET_END]-->
> **Note:** This code example demonstrates the core functionality. Before using it in your project, make sure to update any file paths and configuration values to match your actual environment, verify that all required dependencies are properly installed, and test thoroughly in your development environment. If you encounter any issues, please refer to the [official documentation](https://docs.aspose.cloud/cells/) or reach out to the [support team](https://forum.aspose.cloud/c/cells/7) for assistance.
## Converting CSV to TXT with cURL and the REST API
If you prefer a pure REST approach, the same conversion can be performed with cURL commands.
### 1. Authenticate and Get Access Token
```bash
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"
2. Upload the Source CSV
curl -X PUT "https://api.aspose.cloud/v3.0/cells/storage/file/sample.csv" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: text/csv" \
--data-binary "@sample.csv"
3. Execute the Conversion
curl -X POST "https://api.aspose.cloud/v3.0/cells/sample.csv/convert?format=txt" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"TxtSaveOptions": {"Encoding": "utf-8"}}' \
-o sample.txt
4. Download the Output TXT (already saved by -o flag)
These commands illustrate the same flow without writing any Node.JS code. For more details, see the official API documentation.
Conversion Options: Settings for CSV to TXT Export
The SDK exposes several properties you can tweak to fine‑tune the output.
- Encoding – Determines character set of the TXT file. Example shown above uses
'utf-8'. - OutPath – If you want the result stored directly in cloud storage, set a path like
'output/sample.txt'. - SaveFormat – Although the request format is
'txt', you can also request'txt'with different delimiters via additional options (not covered here).
Here is a snippet that changes the output location:
const convertRequest = new model.ConvertWorkbookRequest({
name: remoteCsvPath,
format: 'txt',
outPath: 'output/result.txt', // store in cloud storage
options: txtSaveOptions
});
<!--[CODE_SNIPPET_END]-->
برای دریافت فهرست کامل ویژگیهای قابل پیکربندی، به کلاس [TxtSaveOptions class](https://reference.aspose.cloud/cells/model/TxtSaveOptions/) مراجعه کنید.
## نتیجهگیری
تبدیل CSV به TXT در Node.JS زمانی که از Aspose.Cells Cloud SDK برای Node.js استفاده کنید، ساده میشود. این کتابخانه پردازش جریان فایل، رمزگذاری سفارشی و تعامل با ذخیرهسازی ابری را مدیریت میکند و به شما امکان میدهد بر منطق کسبوکار تمرکز کنید نه تجزیه و تحلیل سطح پایین. بهخاطر داشته باشید که برای استفاده در محیط تولید یک لایسنس مناسب تهیه کنید؛ لایسنس پرداختی تبدیلهای نامحدود را فعال میکند، در حالی که یک لایسنس موقت برای تست در [صفحه لایسنس موقت](https://purchase.aspose.com/temporary-license/) موجود است. با کدها و مثالهای cURL ارائهشده، میتوانید خروجی CSV به TXT را بهسرعت و بهطور قابل اعتماد در هر سرویس Node.JS ادغام کنید.
## سوالات متداول
**چگونه میتوانم رمزگذاری سفارشی را هنگام تبدیل CSV به TXT در Node.JS مدیریت کنم؟**
از شیء `TxtSaveOptions` برای تنظیم ویژگی `encoding` (مثلاً `'utf-8'` یا `'iso-8859-1'`) استفاده کنید. این کار اطمینان میدهد که فایل TXT تولید شده با انتظارات سیستم هدف مطابقت داشته باشد.
**آیا میتوانم چندین فایل CSV را در یک اجرا پردازش کنم؟**
بله. منطق تبدیل را داخل یک حلقه قرار دهید، هر CSV را بارگذاری کنید، `convertWorkbook` را فراخوانی کنید و فایل TXT حاصل را دانلود کنید. طراحی بدون حالت SDK پردازش دستهای را ساده میکند.
**ملاحظات عملکرد برای فایلهای CSV بزرگ چیست؟**
بارگذاری و دانلود فایل را بهصورت جریان انجام دهید بهجای بارگذاری کل فایل در حافظه. نقاط انتهایی REST SDK با جریانها کار میکنند، که مصرف RAM را کاهش داده و مقیاسپذیری را بهبود میبخشند.
**آیا برای تبدیل CSV به TXT در محیط تولید نیاز به مجوز است؟**
برای استقرارهای تولیدی به یک مجوز پرداختی نیاز است. میتوانید یک مجوز موقت برای ارزیابی از [صفحه مجوز موقت](https://purchase.aspose.com/temporary-license/) دریافت کنید.
## بیشتر بخوانید
- [تبدیل XLSM به CSV با استفاده از Node.js | تبدیل ماکرو Excel به CSV](https://blog.aspose.cloud/fa/cells/convert-xlsm-to-csv-in-nodejs/)
- [تبدیل CSV به JSON با استفاده از Node.js Cloud API | خروجی CSV به JSON آنلاین](https://blog.aspose.cloud/fa/cells/convert-csv-to-json-with-nodejs/)
- [تبدیل Excel به فایل متنی (.txt) با استفاده از Node.js | API Excel به TXT](https://blog.aspose.cloud/fa/cells/convert-excel-to-txt-in-nodejs/)