IRONSOFTWAREHOME
DIĞER BILEŞENLERLE KARŞILAŞTIRIN

IronXL ile CsvWriter Arasındaki Bir Karşılaştırma

Curtis Chau
Curtis Chau
Updated: 19 Temmuz 2026

CSV dosyaları ile çalışmak zor bir görev olabilir. Bununla birlikte, bugün bu görevi yerine getirmek için geliştiricilere yardımcı olacak birçok kütüphane mevcuttur ve Microsoft Excel'in kurulmasına gerek duyulmaz.

Bu makalede, Microsoft Excel belgeleriyle programlı olarak C# .NET teknolojilerinde, ya CSV formatında ya da standart Excel formatında çalışmanın iki popüler kütüphanesi, IronXL ve CSVWriter ile nasıl yapılacağını tartışıp karşılaştıracağız.

Öncelik olarak her iki kütüphanenin sunduğu olanakları inceleyelim.

IronXL Kütüphanesi

IronXL, Microsoft Excel belgelerini C# ile okuma ve düzenleme işlevini kolaylaştıran bir .NET kütüphanesidir. IronXL.Excel, çeşitli elektronik tablo formatlarını okumak için bağımsız bir .NET yazılım kütüphanesidir. Microsoft Excel'in yüklenmiş olmasını gerektirmez ve Interop'a bağımlı değildir.

IronXL, .NET içinde Excel tablosu dosyalarını okuma, düzenleme ve oluşturma işlemlerini yıldırım hızında performans ile gerçekleştiren sezgisel bir C# API'sidir. IronXL, .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS ve Azure'u tamamen destekler.

IronXL, C# için öncü bir .NET core ve .NET framework Excel elektronik tablo kütüphanesidir.

IronXL Özellik Seti

  • XLS/XLSX/CSV/TSV'den veri yükleme, okuma ve düzenleme
  • Kaydetme ve dışa aktarma — XLS/XLSX/CSV/TSV/JSON'a
  • Aralıklar — kolay kullanım için Çalışma Sayfası ["A1:B10"] söz dizimi. Aralıkları kolaylıkla birleştirin ve oluşturun.
  • Sıralama — aralıklar, sütunlar ve satırları sıralayın.
  • Stil — hücre görsel stilleri, yazı tipi, boyut, arka plan deseni, kenarlık, hizalama ve sayı formatları.

CSVWriter

CSV dosyaları yazmak için bir .NET kütüphanesi. Son derece hızlı, esnek ve kullanımı kolay. Özel sınıf nesnelerini yazmayı destekler.

CsvWriter Özellikleri

  • Hızlı: son derece hızlı performans için kuvvetli sınıflar derler
  • Esnek: yazarken muhafazakâr, okurken liberal
  • Kullanımı kolay: okumak ve yazmak, GetRecords<t>() ve WriteRecords(records) kadar basittir
  • Yüksek derecede yapılandırılabilir
  • Linux modu
  • Düşük bellek kullanımı

1. Konsol Uygulaması Oluşturun

Konsol Uygulaması oluşturmak için şu adımları kullanın:

  • Visual Studio 2022 IDE'yi başlatın.
  • "Yeni proje oluştur" üzerine tıklayın.
  • "Yeni proje oluştur" sayfasında, dil açılır listesinde C# seçin, Platformlar listesinden Windows ve Proje türleri listesinden Konsol seçin.
  • Gösterilen proje şablonlarından Console App (.NET Framework) seçin.

Proje Oluştur - Konsol Uygulaması

  • İleri tıklayın.
  • Ek Bilgi ekranında kullanmak istediğiniz Çerçeve sürümünü belirtin. Bu örnekte, .NET Framework 4.8 kullanacağız.

Proje Oluştur - .NET Framework

  • Süreci tamamlamak için Oluşturu tıklayın.

Proje şimdi oluşturuldu ve kütüphaneleri test etmeye neredeyse hazırız. Ancak, hâlâ bunları yüklememiz ve projeye entegre etmemiz gerekiyor. Önce IronXL'i yükleyelim.

2. IronXL C# Kütüphanesi Kurulumu

IronXL kütüphanesini şu yöntemlerle indirip kurabilirsiniz:

  1. NuGet paketleri ile Visual Studio'yu kullanarak
  2. NuGet Paketini doğrudan indirin
  3. DLL ile Manuel Kurulum

Her birine daha yakından bakalım.

2.1. NuGet paketleriyle Visual Studio Kullanarak

Visual Studio, projelerinizde NuGet paketlerini yüklemek için NuGet Paket Yöneticisi sağlar. Buna Proje Menüsü aracılığıyla veya Çözüm Gezgini'nde projenize sağ tıklayabilirsiniz.

Paket-Yönet-NuGet-Paketi

  • Şimdi, arama sekmesinden -> IronXL.Excel'i arayın -> Kur

IronXL'i ara

  • Tamamladık.

2.2. NuGet Paketini Doğrudan İndir

Bu, NuGet sitesine doğrudan gidip paketi indirerek yapılabilir. Adımlar şunlardır:

2.3. DLL ile Manuel Kurulum

IronXL C# Kütüphanesini indirip yüklemenin bir başka yöntemi, Geliştirici Komut İstemi aracılığıyla IronXLNuGet paketini yüklemek için aşağıdaki adımları kullanmaktır.

  • Geliştirici Komut İstemini açın — genellikle Visual Studio klasöründe bulunur.
  • Aşağıdaki komutu yazın:

PM > Install-Package IronXL.Excel

  • Enter'a basın
  • Bu, paketi indirecek ve kuracaktır
  • Visual Studio projenizi yeniden yükleyin ve kullanmaya başlayın

2.4. Gerekli Using Direktiflerini Ekleyin

  1. Çözüm Gezgini'nde Program.cs dosyasını sağ tıklayın ve ardından Kodu Görüntüle'yi tıklayın.
  2. Kodu dosyasının üstüne aşağıdaki using direktiflerini ekleyin:
using IronXL;

Hepsi tamam! IronXL indirildi, kuruldu ve kullanıma hazır. Ancak, bundan önce CsvHelper'ı kurmalıyız.

3. CSVWriter Kurulumu

3.1. NuGet Paket Yöneticisi Konsolunu Kullanarak

CSVWriter ile çalışmak için CsvHelper C# Kütüphanesini indirip kurmanız gerekir. Bunu yapmak için, NuGet paketini Developer Command Prompt üzerinden yüklemek üzere aşağıdaki adımları kullanın.

  • Geliştirici Komut İstemini açın — genellikle Visual Studio klasöründe bulunur.
  • Aşağıdaki komutu yazın:

PM > Install-Package CsvHelper -Version 27.2.1

  • Enter'a basın
  • Bu, paketi indirecek ve kuracaktır
  • Visual Studio projenizi yeniden yükleyin ve kullanmaya başlayın
  • Uygulama için CsvHelper.CsvWriter yöntem detayını kontrol edin

3.2. Doğrudan İndirme

NuGet web sitesinden indir: https://www.nuget.org/packages/CsvHelper/

4. IronXL Kullanarak CSV Dosyaları ile Çalışma

Virgülle ayrılmış değerler (CSV) dosyası, değerleri ayırmak için virgül kullanan sınırlı bir metin dosyasıdır. Dosyanın her satırı bir veri kaydıdır. Bu dosyalarla hesaplamalar yapmak zor bir görev olabilir, ancak IronXL, bunu iyi ve kolay bir şekilde elde etmek için harika bir seçenek sunar, hem de Microsoft Excel kullanmadan. Öncelikle bir CSV dosyasını normal bir Excel dosyasına dönüştürelim.

4.1. Bir CSV Dosyasını Excel Formatına Dönüştürme

Süreç oldukça basit ve kolaydır. Genellikle bir satır kod ile yapılır.

CSV'den Excel formatlarına:

// Load the CSV file and specify the format and delimiter
WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
// Get the default worksheet
WorkSheet ws = workbook.DefaultWorkSheet;

// Save the workbook as an Excel file
workbook.SaveAs("CsvToExcelConversion.xlsx");

4.2. Dönüştürülmüş CSV Dosyalarını IronXL Kullanarak Okuma ve İşleme

IronXL WorkBook sınıfı bir Excel sayfasını temsil eder. Bir Excel Dosyasını C# kullanarak açmak için WorkBook.Load kullanırız ve Excel dosyasının (.xlsx) yolunu belirleriz. Dosyayı okumak için kullanıldığı basit bir satırlık kod aşağıdadır:

// Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");

Her WorkBook birden fazla WorkSheet nesnesi içerebilir. Bunlar, Excel belgesindeki çalışma sayfalarını temsil eder. Çalışma kitabı çalışma sayfaları içeriyorsa, onları şu şekilde adlarına göre alabilirsiniz:

// Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");

Hücre değerlerini okuma kodu:

// Read from Ranges of cells elegantly.
foreach (var cell in worksheet["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}

Çalışma kitabını ve çalışma sayfasını yükledikten ve okuduktan sonra, aşağıdaki kod örneği, formülleri değiştirmek veya belirli hücrelere formül uygulamak için kullanılabilir. Kod şöyle devam ediyor:

// Set Formulas
worksheet["A1"].Formula = "Sum(B8:C12)";
worksheet["B8"].Formula = "=C9/C11";
worksheet["G30"].Formula = "Max(C3:C7)";

// Force recalculate all formula values in all sheets.  
workbook.EvaluateAll();

4.3. Excel belgesini tekrar CSV Dosyasına Kaydetme

IronXL ile CSV dosyaları yazmak kolay bir süreçtir. Aşağıdaki kod, sadece SaveAsCsv metodunu kullanarak Excel dosyasını CSV formatında kaydeder.

// Load the workbook
WorkBook wb = WorkBook.Load("Normal_Excel_File.xlsx");
// Save as .csv file
wb.SaveAsCsv("SaveAsCSV.csv", ",");
// Saved as : SaveAsCSV.Sheet1.csv

5. CSVWriter Kullanarak CSV Verileriyle Çalışma

Verileri bir CSV dosyasına yazmak yaygın bir işlemdir. CSVWriter yöntemi ile sağlanan ayırıcı, C# için yayınlanan çok basit bir CSV yazarında tüm karakterleri ve yeni satır karakterlerini işler. Burada CSVWriter kullanarak nasıl veri yazılacağını inceleyeceğiz.

5.1. Basit Bir Konsol Uygulaması Oluşturma

Visual Studio kullanarak sağlanan ayırıcı ile basit bir CSVWriter konsol uygulaması oluşturun. Proje oluşturulduktan sonra, bir Kişi sınıfı oluşturmanın bir sonraki adımıdır:

public class Person
{
    public int Id { get; set; }
    public string Name { get; set; }
    public bool IsLiving { get; set; }
}

Ana yöntem içinde, şimdi bir Kişi nesneleri listesi oluşturalım ve bunu CSV dosyasına yazacağız:

var myPersonObjects = new List<Person>()
{
    new Person { Id = 1, IsLiving = true, Name = "John" },
    new Person { Id = 2, IsLiving = true, Name = "Steve" },
    new Person { Id = 3, IsLiving = true, Name = "James" }
};

5.2. Varsayılan Ayarlarla C# ile Bir CSV Dosyasına Yazma

CsvHelper, CSVWriter yöntemi ile C#'da CSV yazmanın standart bir yolu haline gelmiştir ve kullanımı oldukça kolaydır:

using (var writer = new StreamWriter("filePersons.csv"))
using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
{
    csv.WriteRecords(myPersonObjects);
}

5.3. Veri Eklemek

Programımızı her çalıştırdığımızda, eski CSV dosyalarının üzerine yazılacağını unutmamamız gerekir. Bazen mevcut verilerin üzerine yazmak yerine dosyanın sonuna veri eklemek isteyebiliriz. CSVWriter, sağlanan ayırıcı ile bir dosya açma/yazma sorumluluğunda olmadığından bunun için bir yöntem sağlamaz. Bunu bir FileStream kullanarak gerçekleştirebiliriz ve ardından bu FileStream kullanarak StreamWriter'ımızı oluşturabiliriz. Bu makalenin kapsamına girmese de, herhangi bir uygulamanın ayrılmaz bir parçası olduğundan bunu nasıl yapacağınızı göstereceğim.

var configPersons = new CsvConfiguration(CultureInfo.InvariantCulture)
{
    HasHeaderRecord = false
};
using (var stream = File.Open("filePersons.csv", FileMode.Append))
using (var writer = new StreamWriter(stream))
using (var csv = new CsvWriter(writer, configPersons))
{
    csv.WriteRecords(myPersonObjects);
}

Mevcut bir dosyaya ekleme yapmak zordur, ancak ekleme yaptığımızda sıralama değişebilir veya yeni özellikler eklenmiş olabilir. Eklemeler yaparken bunu göz önünde bulundurduğumuzdan emin olmalıyız.

6. Lisanslama

IronXL, C# Excel kütüphanesi olan açık ticari bir üründür. Geliştirme için ücretsiz olup, ticari dağıtım için her zaman lisanslanabilir. Lisanslar tek proje kullanımı, tek geliştiriciler, ajanslar ve global şirketler için, ayrıca SaaS ve OEM yeniden dağıtımı için mevcuttur. Tüm lisanslar, 30 günlük para iade garantisi, bir yıllık ürün desteği ve güncellemeleri, geliştirici/staging/üretim için geçerliliği ve ayrıca kalıcı bir lisans (tek seferlik satın alma) içerir. Lite paketi $999 ile başlar.

CSVWriter, sağlanan ayırıcı ile virgülle ayrılmış bir gerçek ve ticari dostu kullanım için tamamen ücretsizdir.

7. Özet ve Sonuç

Özet

IronXL, bir Excel dosyasını işlemek için gereken her şeyi sağlayan kapsamlı bir kütüphanedir. Kullanımı kolaydır ve çeşitli formatları XLSX'ye, ve XLSX'den diğer formatlara, örneğin CSV'ye dönüştürme olanağı sağlar. Dönüşüm, kullanıcıların diğer dosya formatlarını da kolayca işleyebilmesini sağlar.

Diğer taraftan, CSVWriter yalnızca CSV dosya formatlarıyla çalışır ve çok sınırlı seçeneklere sahiptir. Kullanıcılar farklı dosya formatları arasında geçiş yapamazken, IronXL ile yapabilirler. Tüm kod örnekleri CsvHelper dökümantasyon dosyalarında bulunabilir. Bu belge, projeinizde CSVWriter'ı nasıl kullanacağınıza dair yönergeler sağlar.

Sonuç

IronXL, birden fazla formatla çalışma desteği sunduğundan CsvHelper.CSVWriter'a göre açık bir avantaja sahiptir. Dahası, formülleri ve stilleri istediğiniz gibi uygulayabilirken, CsvHelper sadece CSV dosyalarını okumayı ve yazmayı sağlar ve sınırlı seçeneklerle. Ayrıca, mevcut bir CSV dosyasına yeni kayıtlar ekleyemezsiniz, çünkü sadece önceki girişlerin üzerine yazar.

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