IRONSOFTWAREHOME
IRONXL KULLANARAK

Blazor'da CSV'ye Nasıl Dışa Aktarılır

Curtis Chau
Curtis Chau
Updated: 21 Nisan 2026

Bugün, bir Excel dosyasını CSV formatına dönüştürmek için Blazor ve IronXL nasıl kullanılacağınız üzerine derinlemesine indiriyoruz. Bu eğitimin sonunda, Excel verilerini CSV dahil çeşitli formatlarda ihraç eden temel bir Blazor uygulaması oluşturabileceksiniz.

IronXL'e Giriş

IronXL, XLS, XLSX, XLSM, XLTX ve CSV dahil çeşitli formatlarda Excel dosyalarıyla çalışmak üzere tasarlanmış güçlü bir .NET Excel kütüphanesidir. Microsoft Office veya Excel Interop'a ihtiyaç duymadan programatik olarak Excel verilerini okuyabilir, yazabilir ve işlemenizi sağlar.

IronXL ile, Excel defterlerini oluşturabilir, yükleyebilir ve kaydedebilirsiniz ve tek tek hücrelere veya aralıklara veri okuyup yazabilirsiniz. Biçimlendirme, formüller, grafikler ve pivot tablolar gibi gelişmiş özellikleri de destekler. IronXL, çeşitli .NET Framework'leriyle uyumludur ve C# ve VB.NET gibi popüler dillerle kullanılabilir.

Excel Dosyasını CSV'ye Dönüştürme Adımları

Blazor Projenizi Kurma

Başlamak için yeni bir Blazor Server projesi oluşturmanız gerekecek. Visual Studio'yu açın, yeni bir proje oluşturun ve "Blazor Server Uygulaması" şablonunu seçin. Projenizi adlandırın ve "Oluştur"a tıklayın.

Projeniz oluşturulduktan sonra, Sayfalar klasörünü açın ve Index.razor dosyasını bulun. Bu, Blazor bileşenlerinin dosya yüklemeleri ve dönüşümleri yönetmek için eklendiği ve kodlandığı yerdir.

IronXL'i Kurma

Kod yazmaya başlamadan önce IronXL kütüphanesinin kurulması gerekir. Visual Studio'daki Paket Yöneticisi Konsolu nu açın ve aşağıdaki komutu çalıştırın:

PM > Install-Package IronXL.Excel

Bu komut, Blazor projenizde IronXL kütüphanesini kuracaktır. Artık kod yazmaya hazırsınız!

Dosya Yükleme Bileşeni Oluşturma

Öncelikle, kullanıcıların mevcut bir Excel dosyasını yüklemesine izin veren temel bir dosya yükleme bileşeni oluşturun. Ardından, InputFile bileşeni Microsoft.AspNetCore.Components.Forms ad alanından eklenir. Index.razor dosyanıza, "@page """ satırının altına aşağıdaki kodu ekleyin:

@using Microsoft.AspNetCore.Components.Forms
@using IronXL
@using System.IO
@using System.Threading.Tasks

<div class="container">
    <h3>File Upload</h3>

    <InputFile class="button" OnChange="@OnInputFileChange" accept=".xls,.xlsx,.xlsm,.xltx,.csv,.tsv" />
    <h3>Selected File: @originalFileName</h3>
    <h3 style="color:bisque">Is File converted: <span>@message</span></h3>
</div>
Text

Bu kod, dosya yükleme bileşenini, butonu ve dosya dönüştürme durumunu göstermek için bir mesaj alanı ile kurar. InputFile bileşenindeki accept niteliği kabul edilen dosya formatlarını belirtir.

Dosya Dönüştürme Kodunu Yazma

Şimdi, dosya yüklemeyi ve dönüştürmeyi yöneten kodu yazalım. Bunu gerçekleştirmek için IronXL, Blazor ve C# kombinasyonu kullanılacaktır. Bir CSV dosyasını Excel dosyasına IronXL kullanarak dönüştürebilirsiniz.

Aşağıdaki kodu daha önce eklediğiniz div ögesinin altına Index.razor dosyanıza ekleyin.

@code {
    private string originalFileName;
    private string message = "";

    private async Task OnInputFileChange(InputFileChangeEventArgs e)
    {
        var file = e.File;
        originalFileName = file.Name;

        try
        {
            // Read the uploaded file into a memory stream
            using var memoryStream = new MemoryStream();
            await file.OpenReadStream().CopyToAsync(memoryStream);

            // Load the workbook using IronXL
            WorkBook workBook = WorkBook.Load(memoryStream);

            // Save the workbook as a CSV file
            string outputPath = "sample.csv";
            workBook.SaveAsCsv(outputPath);

            message = "Conversion completed!";
        }
        catch (Exception ex)
        {
            message = $"An error occurred: {ex.Message}";
        }
    }
}
Text

Bu kod, InputFile bileşeni kullanılarak bir Excel elektronik tablosu yüklendiğinde tetiklenecek olan OnInputFileChange adlı özel bir yöntemi tanımlar; Excel, XLS veya XLSX formatında olabilir. Kod, yüklenen temel Excel dosyasını okur, bir WorkBook nesnesine yükler ve ardından WorkBook dosyasını bir CSV dosyası olarak kaydeder. Dönüşüm durumu sayfadaki mesaj alanında gösterilir.

Kod Çözümlemesi

Öncelikle, tam kodu inceleyin:

@page "/"
@using Microsoft.AspNetCore.Components.Forms
@using IronXL
@using System.IO
@using System.Threading.Tasks

<style>
    body{
        background-color: skyblue
    }
    .container {
        max-width: 800px;
        margin: 0 auto;
        font-family: Arial, sans-serif;
    }

    h3 {
        margin-top: 30px;
        font-size: 30px;
        margin-bottom: 30px;
    }

    .button {
        background-color: #4CAF50;
        border: none;
        color: white;
        padding: 15px 32px;
        text-align: center;
        text-decoration: none;
        display: inline-block;
        font-size: 16px;
        margin: 15px 0;
        cursor: pointer;
    }
    span {
        font-size: 20px;
    }
</style>

<div class="container">
    <h3>File Upload</h3>

    <InputFile class="button" OnChange="@OnInputFileChange" accept=".xls,.xlsx,.xlsm,.xltx,.csv,.tsv" />
    <h3>Selected File: @originalFileName</h3>
    <h3 style="color:bisque">Is File converted: <span>@message</span></h3>
</div>

@code {
    private string originalFileName;
    private string message = "";

    private async Task OnInputFileChange(InputFileChangeEventArgs e)
    {
        var file = e.File;
        originalFileName = file.Name;

        try
        {
            // Read the uploaded file into a memory stream
            using var memoryStream = new MemoryStream();
            await file.OpenReadStream().CopyToAsync(memoryStream);

            // Load the workbook using IronXL
            WorkBook workBook = WorkBook.Load(memoryStream);

            // Save the workbook as a CSV file
            string outputPath = "sample.csv";
            workBook.SaveAsCsv(outputPath);

            message = "Conversion completed!";
        }
        catch (Exception ex)
        {
            message = $"An error occurred: {ex.Message}";
        }
    }
}
Text

Kodu daha da açıklayalım:

  1. Bir dosya yüklendiğinde, OnInputFileChange yöntemi tetiklenir ve bu yönteme bir InputFileChangeEventArgs nesnesi iletilir. Bu nesne, yüklenen dosya hakkında, adı ve boyutu gibi bilgiler içerir.
  2. Orijinal dosya adını, sayfada göstermek için originalFileName adlı bir değişkende saklayın.
  3. Bir try-catch bloğu içinde, yüklenen dosyanın içeriğini okumak için yeni bir MemoryStream nesnesi oluşturun. Using ifadesi, bellek akışının artık ihtiyaç duyulmadığında doğru şekilde bertaraf edilmesini sağlar.
  4. Yüklenen dosyanın içeriğini hafıza akışına eş zamanlı kopyalamak için await anahtar kelimesini kullanın. Bu, dosya okunurken uygulamanın duyarlı kalmasını sağlar.
  5. Sonraki adımda, hafıza akışının içeriğini bir WorkBook nesnesine yüklemek için WorkBook.Load yöntemini kullanın. Bu nesne, elektronik tablonun tüm sayfalarını, hücrelerini ve verilerini temsil eder.
  6. Dönüştürülen CSV dosyası için bir çıkış dosya adı belirtin. Bu durumda, "sample.csv" adını kullanıyoruz.
  7. Ardından, WorkBook nesnesinin SaveAsCsv yöntemi kullanılarak çalışma kitabı belirtilen çıktı dosya adıyla bir CSV dosyası olarak kaydedilir.
  8. Dönüşüm başarılı olursa, dönüşümün tamamlandığını belirtmek için bir mesaj görüntülenir. Bir hata oluşursa, istisnayı yakalayın ve bir hata mesajı gösterin.

Uygulamayı Test Etme

Blazor uygulamanız tamamlandıktan sonra, onu test etme zamanı! Visual Studio'da uygulamanızı çalıştırmak için F5'e basın. Uygulama çalıştığında, sayfada bir dosya yükleme düğmesi görmelisiniz.

Blazor'da CSV'ye Dışa Aktarma Nasıl Yapılır, Şekil 1: Blazor uygulamasını çalıştırın Blazor uygulamasını çalıştırın

Düğmeye tıklayın ve yüklemek için bir Excel dosyası seçin. Kabul edilen dosya formatları, InputFile bileşeninin kabul niteliğinde listelenir.

Blazor'da CSV'ye Dışa Aktarma Nasıl Yapılır, Şekil 2: Bir Excel dosyası seçin Bir Excel dosyası seçin

Bir dosya seçtikten sonra, uygulama dosyayı okur, IronXL kullanarak CSV formatına dönüştürür ve belirtilen çıkış dosya adı ile dönüştürülen dosyayı kaydeder. Dönüşümün durumunu ve orijinal dosya adını belirten bir mesaj görmelisiniz.

Blazor'da CSV'ye Dışa Aktarma Nasıl Yapılır, Şekil 3: Dönüşüm durumu Dönüşüm durumu

Tebrikler! IronXL kullanarak Blazor'da Excel dosyalarını CSV formatına ihraç edebilecek bir uygulama başarıyla oluşturduk. Yukarıdaki programın çıktısını gösteren ekran görüntüsü aşağıdadır.

Blazor'da CSV'ye Dışa Aktarma Nasıl Yapılır, Şekil 4: Çıktı Excel dosyası Çıkış Excel Dosyası

Sonuç

Bu eğitim, IronXL kullanarak Blazor uygulaması ile Excel dosyalarını CSV formatına nasıl ihraç edileceğini gösterdi. Dosya yükleme bileşeni oluşturmayı, dosya yüklemelerini yönetmeyi ve IronXL'in güçlü özelliklerini kullanarak Excel dosyalarını CSV formatına dönüştürmeyi gösterdik.

IronXL'ı Blazor uygulamalarınıza entegre ederek, veri ithalatı, işleme ve ihracatı gibi çok çeşitli Excel ile ilgili görevleri kolayca yönetebilirsiniz. Bu, projeleriniz için geniş bir olanak aralığı açar ve kullanıcılarınız için daha zengin bir deneyim sunmanıza yardımcı olur. IronXL kütüphanesini kullanarak CSV'yi Blazor'da Excel'e dönüştürebilirsiniz.

IronXL, taahhüt etmeden önce özelliklerini ve yeteneklerini test etmenizi sağlayan ücretsiz bir deneme sunar. Deneme süresi bittikten sonra, IronXL lisansları $999 fiyatıyla başlar.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez