IRONSOFTWAREHOME
IRONXL KULLANARAK

C#'da Virgüllerle CSV Dosyalarını Nasıl Okursunuz

Curtis Chau
Curtis Chau
Updated: 8 Mayıs 2026

.NET Geliştiricileri Neden Daha İyi Bir CSV Çözümüne İhtiyaç Duyuyor?

CSV dosyaları sayısız .NET uygulaması arasında veri alışverişini güçlendirir. Finansal raporlardan envanter sistemlerine kadar, sadece birkaç kod satırıyla programlı olarak CSV dosyaları oluşturma özgürlüğü sizde. CsvHelper gibi kütüphaneler temel CSV işlemlerini karşılasa da, modern geliştiriciler formüllerle Excel çalışma kitapları dönüştürme, verileri aktarma sırasında veri türlerini koruma ve kurumsal düzeyde tablo süreçleriyle uğraşma gibi karmaşık senaryolarla karşılaşıyorlar. IronXL kapsamlı Excel işlevselliği ile sağlam CSV yazımını birleştirerek, birden fazla sütunu tek bir bağımlılık içermeyen kütüphanede kolayca işler ve RFC 4180 standartlarına uyar.

Bu, birden fazla sütunu destekleyen, yalnızca işlenen satırı etkileyen satıra özgü işlevsellik sunan ve otomatik olarak çıkarılan ayırıcıları destekleyen özel bir .NET CSV yazıcı veya .NET CSV ayıklayıcı oluşturan geliştiriciler için idealdir.

IronXL ile Başlangıç

IronXL yüklendiğinde, birkaç saniye içinde NuGet Paket Yöneticisi ile süreci tamamlayabilirsiniz:

PM > Install-Package IronXL.Excel

Yüklendikten sonra, CSV dosyaları yazmaya başlamak ve ayrılmış değerlerle verimli bir şekilde çalışmak için IronXL ad alanını ekleyin:

using IronXL;
class Program
{
    static void Main(string[] args)
    {
        // Create a new workbook and worksheet
        WorkBook workBook = WorkBook.Create();
        WorkSheet workSheet = workBook.CreateWorkSheet("data");
        // Add headers
        workSheet["A1"].Value = "Product";
        workSheet["B1"].Value = "Quantity";
        workSheet["C1"].Value = "Price";
        // Add data
        workSheet["A2"].Value = "Widget";
        workSheet["B2"].Value = 100;
        workSheet["C2"].Value = 19.99;
        // Save as CSV with comma delimiter
        workBook.SaveAsCsv("inventory.csv", ",");
    }
}

Bu basit konsol test programı, verileri içeren bir Workbook nesnesi oluşturarak doğrudan C# kodunuzdan CSV içeriği yazmayı nasıl gösteriyor. SaveAsCsv yöntemi varsayılan bir ayırıcı (virgül) kullanır, ancak farklı yerel ayarlar için ayırıcıyı tanımlamanıza olanak tanır; Bu özellikle ondalık ayırıcı veya alternatif sütun ayırıcı karakteri tanımlarken yardımcı olur. İçsel olarak, sep, çıktı tamponu için dizi ayırma işlemleri yapar. Önceden bahsedilen sep parametresi bu karakteri tanımlamanıza olanak tanır.

Statik bir giriş noktası sağlamanın yanı sıra, kaynakları statik olarak tanımlanmış bir havuz kullanarak etkili bellek yönetimini nasıl gerçekleştireceğimizi de gösterdik, bu da birden fazla satır arasında yüksek performans sağlar.

Gelişmiş CSV Dosyası Oluşturma Teknikleri

Virgüllü CSV Dosyalarını C# ile Okuma: Şekil 1 - IronXL ile Örnek CSV çıktısı

Gelişmiş CSV Dosyası Oluşturma Teknikleri

Excel Çalışma Kitaplarını CSV'ye Dönüştürme

Mevcut Excel dosyalarını CSV'ye dönüştürme, formülleri değerlendirme ve veri bütünlüğünü koruma konusunda IronXL üstün. Başlık satırları ve dinamik olarak üretilen verileri içeren CSV dosyaları yazarken bu gereklidir.

// Load an Excel file with formulas and formatting
WorkBook workBook = WorkBook.Load("financial_report.xlsx");
// IronXL evaluates formulas before export
workBook.EvaluateAll();
// Export to CSV - each worksheet creates a separate CSV file
workBook.SaveAsCsv("report.csv", ",");
// Creates: report.Sheet1.csv, report.Sheet2.csv, etc.

Çok sayfalı çalışma kitaplarını dönüştürürken, IronXL her çalışma sayfası için ayrı CSV dosyaları oluşturur. Son CSV çıktısında doğru verilerin temin edilmesini sağlayarak, formül hesaplamaları ihracat öncesinde gerçekleştirilir. Ancak bu tek özellik değildir. Varsayılan otomatik çıkarılan ayırıcı, bölgeler arasında uyumluluğu sağlar ve birden fazla satır veya sütun sorunsuz bir şekilde ele alınır.

Varsayılan desteklenen ayırıcıların değişebildiği dinamik ortamlar için de sep kullanılabilir.

Çıktı

İlk olarak, çok sayfalı Excel dosyamızdan oluşturulan CSV dosyalarını burada görebilirsiniz:

Virgüllü CSV Dosyalarını C# ile Okuma: Şekil 2 - CSV dosyaları

Ve işte Excel sayfalarından birinin karşılaştırılması örneği ve karşılık gelen CSV dosyası:

Virgüllü CSV Dosyalarını C# ile Okuma: Şekil 3 - Örnek çıktı

DataTable'ı CSV'ye Aktarma

Veritabanı odaklı uygulamalar için, IronXL DataTable aktarımlarını kolaylaştırır. Var'i DataRow olarak ayarlıyoruz, bu da tipik bir ref var v yerine daha net olur.

// Assume dataTable contains query results
DataTable dataTable = GetSalesData();
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.CreateWorkSheet("sales");
// Import DataTable directly
var row = 1;
foreach (var dataRow in dataTable.Rows)
{
    for (var col = 0; col < dataTable.Columns.Count; col++)
    {
        workSheet.SetCellValue(row, col, dataRow[col].ToString());
    }
    row++;
}
// Export with custom delimiter if needed
workBook.SaveAsCsv("sales_data.csv", ";");

İçe aktarma sırasında, dataTable.Rows koleksiyonundan her bir yatay veri seti çalışma sayfasında yeni bir satır haline gelir. Dönüştürme sırasında IronXL veri türlerini korur, bu da sayıların sayısal kalması, tarihlerin biçimlerini koruması ve metnin özel karakterleri doğru bir şekilde işlemesi anlamına gelir, ek yapılandırma olmadan.

Çıktı

İşte örnek veri kaynağımızı çıktı CSV dosyasının yanında görebilirsiniz:

Virgüllü CSV Dosyalarını C# ile Okuma: Şekil 4 - DataTable'ı CSV çıktısına aktarma

IronXL ve CsvHelper: Yan Yana CSV Dosyası Yazma Karşılaştırması

CSV çözümleme ve yazım iş akışlarını gösteren bu çalışan veri aktarım senaryosunu düşünün.

CsvHelper Uygulaması:

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

IronXL Uygulaması:

WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.CreateWorkSheet("employees");
// Add data with automatic type handling
int rowIndex = 1;
foreach (var emp in employees)
{
    workSheet[$"A{rowIndex}"].Value = emp.Name;
    workSheet[$"B{rowIndex}"].Value = emp.Salary;
    workSheet[$"C{rowIndex}"].Value = emp.StartDate;
    rowIndex++;
}
workBook.SaveAsCsv("employees.csv", ",");

Özellik

CsvHelper

IronXL

Temel CSV Yazımı

Excel'den CSV'ye Dönüştürme

Formül Değerlendirmesi

Çok sayfalı İşleme

Veri Türü Koruma

Elle

Otomatik

Excel Formatı Desteği

XLSX, XLS, XLSM

MS Office Gerektirmez

CsvHelper basit sütun yazma işlemlerini etkili bir şekilde işlerken, IronXL birden çok satır, interpolasyonlu diziler ve dinamik kod oluşturma senaryolarında çalışabilme esnekliğini sağlar ve hatta ref struct link gibi yapılarla düşük seviyeli optimizasyonlara imkan tanır.

Geliştiriciler belirli kriterleri karşılayan satırları tarayabilir, varsayılan otomatik ayıklanan ayırıcıları yönetebilir veya yalnızca her bir girdinin anahtarını hata ayıklama için açığa çıkaran basit konsol programlarıyla test edebilir.

Kurumsal Özellikler ve En İyi Uygulamalar

IronXL'nin SaveAsCsv yöntemi, kurumsal düzeyde yetenekler içerir:

  • Özel ayırıcılar: Virgül, noktalı virgül, sekme veya herhangi bir karakter için destek (varsayılan ayırıcı sep ile değiştirilebilir)
  • Kodlama seçenekleri: UTF-8, UTF-16 ve özel kodlamalar
  • Formül değerlendirmesi: İhracattan önce Excel formüllerini hesaplar
  • Çapraz platform desteği: Windows, Linux ve macOS üzerinde çalışır

Geliştiriciler ayrıca birden fazla sütuna erişmek için uzantı yöntemleri uygulayabilir, etkin işleme veya metin sarma gerektiğinde birden fazla satıra yayılan CSV satırları yazabilir.

Yaygın Sorunlar ve Çözümleri

CSV çıkışlarıyla çalışırken, geliştiriciler genellikle bu zorluklarla karşılaşırlar:

  • Veri içindeki özel karakterler: IronXL, tırnak işaretlerini, virgülleri ve satır sonlarını otomatik olarak kaçış karakteri ile korur
  • Büyük dosya yönetimi: Veriyi parçalara bölerek işlemek için çalışma sayfası aralıklarını kullanın,
  • Karakter kodlama sorunları: Uluslararası karakterler için UTF-8 kodlamasını belirtin
  • Eksik veri türleri: IronXL, varsayılan olarak sayısal ve tarih formatlarını korur

Ayrıntılı olarak sorun giderme için IronXL'nin CSV belgelendirmesi, API referansı ve destek kaynaklarını ziyaret edin.

Bugün CSV Yazıcınızı Oluşturmaya Başlayın

IronXL, CSV yazımını bir çözümleme zorluğundan basit bir işleve dönüştürür. CSV işlevselliğini Excel çalışma kitabı desteği, formül değerlendirmesi ve otomatik tür işleme ile birleştirerek, birden fazla kütüphaneyi yönetme veya manuel veri dönüşümleri karmaşıklığını ortadan kaldırır.

CSV iş akışlarınızı kolaylaştırmaya hazır mısınız? Ücretsiz denemeye başlayın $999'dan başlayarak.

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