Excel verilerini CSV formatına dönüştürmek, veri boru hatları, raporlama araçları veya içe/dışa aktarma özellikleri oluştururken sıkça ihtiyaç duyulan bir gereksinimdir. Aspose.BarCode Cloud SDK for Node.js Node.JS’te XLS den CSV’ye dönüşümü basit ve güvenilir yapan sağlam bir kütüphane sağlar. Bu kılavuz, önkoşulları, kurulum adımlarını, tam çalışan bir örneği ve en iyi uygulama ipuçlarını adım adım göstererek dönüşümü uygulamanıza güvenle entegre etmenizi sağlar.

Node.JS’de Aspose.BarCode Kullanarak XLS’ten CSV’ye Dönüştürme Tam Çalışan Örneği

Bu örnek, bulut depolamadan bir XLS çalışma kitabını nasıl okuyacağınızı, her çalışma sayfasını CSV’ye nasıl dönüştüreceğinizi ve sonucu istemciye nasıl akıtacağınızı gösterir.

// 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);
    }
})();

Not: Bu kod örneği temel işlevselliği göstermektedir. Projenizde kullanmadan önce, dosya yollarını (sample.xls, output) güncellediğinizden, tüm gerekli bağımlılıkların doğru şekilde yüklendiğinden emin olun ve geliştirme ortamınızda kapsamlı bir şekilde test edin. Herhangi bir sorunla karşılaşırsanız, lütfen resmi belgeler bölümüne bakın veya destek ekibi ile iletişime geçin.

cURL ile Cloud API Kullanarak XLS’ten CSV’ye Dönüştürme

Kod yazmadan aynı dönüşümü, REST uç noktalarını çağırmak için cURL kullanarak gerçekleştirebilirsiniz. İşlem akışı kimlik doğrulama, dosya yükleme, dönüşüm isteği ve indirmeden oluşur.

# 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"

İstek parametreleri hakkında daha fazla ayrıntı için, resmi API belgelerine bakın.

XLS’ten CSV’ye Dönüştürme Node.JS’te Nasıl Çalışır

  1. Configuration Setup - Bir Configuration nesnesi istemci kimlik bilgilerinizi ve isteğe bağlı temel URL’yi tutar. Bu nesne BarcodeApi örneğine geçirilir.
    const config = new Configuration({ clientId, clientSecret });
    const apiInstance = new BarcodeApi(config);
    
  2. File Upload - uploadFile yöntemi yerel XLS dosyasını Aspose.BarCode bulut depolamasına akıtır, böylece dönüşüm için kullanılabilir hale gelir.
    await apiInstance.uploadFile({ path: inputFile, file: fileData });
    
  3. Conversion Call - convertDocument (varsayımsal) kaynak dosya adını, hedef formatı (csv) ve ayırıcı ve kodlama gibi dönüşüm seçeneklerini içeren bir istek gönderir. Servis her çalışma sayfasını işler ve ilgili CSV dosyalarını oluşturur.
    const response = await apiInstance.convertDocument({ name: inputFile, format: "csv", options });
    
  4. Result Retrieval - Dönüştürmeden sonra, getFilesList çıktı klasöründeki oluşturulan CSV dosyalarını listeler. Her dosya daha sonra downloadFile ile indirilir ve yerel olarak kaydedilir.
    const files = await apiInstance.getFilesList({ path: outputFolder });
    const csvData = await apiInstance.downloadFile({ path: csvPath });
    
  5. Error Handling - Herhangi bir API hatası catch bloğunda yakalanır; burada ayrıntıları kaydedebilir veya yeniden deneme mantığını uygulayabilirsiniz. Hata kodlarının tam listesi için API referansına bakın.

Ortam Hazırlığı - Önkoşullar ve Kurulum

Başlamadan önce, aşağıdaki önkoşulların karşılandığından emin olun:

  • Geliştirme makinenizde yüklü Node.js 14 ve üzeri.
  • Geçerli istemci kimlik bilgilerine (Client ID ve Client Secret) sahip bir Aspose Cloud hesabı.
  • API çağrıları için internete erişim.

Kütüphaneyi npm ile kurun ve referans için indirme sayfasına bağlantı verin:

npm install aspose-barcode-cloud
# Download package details: https://releases.aspose.cloud/barcode/nodejs/

Kurulumdan sonra, kimlik bilgilerinizi güvenli bir şekilde depolamak için bir yapılandırma dosyası (ör. config.json) oluşturun.

Dönüşüm Parametreleri: Seçenekler ve Ayarlar

Dönüşüm API’si, çıktıyı ince ayar yapmanızı sağlayan çeşitli isteğe bağlı parametreleri kabul eder:

  • delimiter - Alanları ayırmak için bir karakter seçin (varsayılan ,).
options.delimiter = "\t"; // Tab‑delimited CSV
  • encoding - CSV dosyası için karakter kodlamasını tanımlayın (ör. UTF-8, ISO-8859-1).
options.encoding = "UTF-8";
  • outPath - CSV dosyalarının depolanacağı bir bulut klasörü belirtin.
options.outPath = "converted";
  • storage - Özel bir depolama hizmeti kullanıyorsanız depolama adını seçin.
options.storage = "MyCustomStorage";

Desteklenen seçeneklerin tam listesi için, API referansı sayfasına bakın.

XLS’ten CSV’ye Verimli Dönüşüm İçin Pratik İpuçları

  • Büyük Dosyaları Akıtın - Satırları parçalar halinde işlemek ve yüksek bellek tüketimini önlemek için akış modunu etkinleştirin.
  • Geçici Bir Klasör Kullanın - Ara CSV dosyalarını özel bir bulut klasörüne yazın ve indirme sonrası temizleyin.
  • Uygun Bir Ayırıcı Belirleyin - Veriniz virgül içeriyorsa, sütun hizalanmasını önlemek için sekme veya boru ayırıcıya geçin.
  • İndirme Sonrası Doğrulama Yapın - Daha fazla işlem yapmadan önce CSV’nin doğru kodlamasını ve ayırıcı kullanımını sağlamak için ilk birkaç satırı kontrol edin.

Sonuç

Node.JS’te XLS’ten CSV’ye dönüşüm, Aspose.BarCode Cloud SDK for Node.js yeteneklerini kullandığınızda oldukça basit hale gelir. Bu kılavuz, ortam kurulumundan tam çalışan bir örneğe, yapılandırma seçeneklerine ve performans odaklı en iyi uygulamalara kadar her şeyi kapsadı. İstemci kimlik bilgilerinizi güvence altına almayı, büyük çalışma kitapları için akışı (streaming) seçmeyi ve bulut depolamanızı düzenli tutmak için geçici dosyaları temizlemeyi unutmayın. Üretim dağıtımları için ücretli bir lisansa ihtiyacınız olacak; fiyatlandırmayı ürün sayfasında inceleyebilir ve geçici lisans sayfasından geçici bir değerlendirme lisansı alabilirsiniz.

SSS

Node.JS’te XLS’ten CSV’ye dönüşüm çoklu çalışma sayfalarını nasıl ele alır?
Kütüphane her çalışma sayfasını sırasıyla işler ve her sayfa için ayrı bir CSV dosyası oluşturur. Tek bir CSV gerektiğinde daha sonra birleştirebilirsiniz. Ayrıntılı kullanım için Aspose.BarCode Cloud SDK for Node.js adresine bakın.

Büyük XLS dosyalarını tüm çalışma kitabını belleğe yüklemeden CSV’ye akıtabilir miyim?
Evet. Dönüştürme parametrelerinde akış seçeneğini etkinleştirerek, API satırları yönetilebilir parçalar halinde okur, bellek kullanımını düşük tutar ve performansı yüksek tutar.

Node.js için Aspose.BarCode Cloud SDK’sını üretimde kullanmak için hangi lisans gereklidir?
Üretim kullanımında ticari bir lisans gereklidir. Satın alma seçenekleri ürün fiyatlandırma sayfasında listelenmiştir ve geçici bir değerlendirme lisansı için geçici lisans sayfasından talepte bulunabilirsiniz.

Dönüştürme sırasında CSV ayırıcıyı özelleştirmek mümkün mü?
Kesinlikle. Dönüştürme parametrelerinde delimiter seçeneğini ihtiyacınız olan herhangi bir karaktere, örneğin bir sekme (\t) veya boru (|) işaretine ayarlayın. Bu, oluşturulan CSV’nin sonraki işlem beklentilerinize uymasını sağlar.

Daha Fazla Oku