How to Use C# to Convert Datatable to CSV
IronXL kullanarak C#'da bir DataTable'yi CSV'ye dönüştürün; WorkBook yaratarak, DataTable satırlarıyla doldurarak ve SaveAsCsv() metodunu çağırarak - karmaşık döngüler veya Interop gerekmez.
Hızlı Başlangıç: DataTable'nin CSV'ye Tek Satırda İhracı
Dolu bir DataTable'yi bir metod çağrısı ile CSV dosyasına dönüştürmek için IronXL kullanın — döngü yok, Interop yok, karmaşıklık yok. Sadece bir WorkBook ve onun DefaultWorkSheet'sine ihtiyacınız var; SaveAsCsv kullanarak saniyeler içinde ihraç edebilirsiniz.
-
IronXL aşağıdaki NuGet Paket Yöneticisi ile yükleyin
-
Bu kod parçacığını kopyalayın ve çalıştırın.
IronXL.WorkBook.Create().DefaultWorkSheet.SaveAsCsv("output.csv", ","); -
Canlı ortamınızda test için dağıtım yapın
Ücretsiz deneme ile bugün projenizde IronXL kullanmaya başlayın
Asgari İş Akışı (5 adım)
- DataTable'i CSV'ye dönüştüren C# Kütüphanesini indir ve yükle
- Yeni verileri depolamak için
DataTablesınıfını kullanın - Yeni bir hesap tablosu oluşturun veya mevcut bir hesap tablosunu içe aktarın
- Tablo satırları üzerinde döngü yapın ve çalışma sayfasındaki hücreleri buna göre doldurun
SaveAsCsvC# fonksiyonu ile CSV dosyasına aktar
Adım 1
IronXL'i Projeme Nasıl Kurarım?
IronXL'yi uygulamalarınızda kullanmadan önce yüklemelisiniz. IronXL, projeleriniz için birden fazla kurulum seçeneği sunar. IronXL, C# ile Excel dosyalarıyla çalışmayı Microsoft Excel veya Interop kurulumu gerektirmeden basitleştiren bir kütüphanedir.
Hangi Kurulum Yöntemini Kullanmalıyım?
Resmi siteden aşağıdaki bağlantıyı kullanarak indirin: https://ironsoftware.com/csharp/excel/docs/
or
Visual Studio'da, Proje menüsünü seçin
- NuGet Paketlerini Yönet'e tıklayın
IronXL.Exceliçin arama yapın- Yükle'ye tıklayın
Hangi NuGet Komutunu Kullanmalıyım?
Install-Package IronXL.Excel
NuGet Paket Yöneticisini Neden Seçmelisiniz?
NuGet, bağımlılıkları otomatik olarak yönettiği ve kütüphaneleri güncel tuttuğu için .NET geliştiricileri tarafından tercih edilen bir yöntemdir. IronXL paketi, hesap tablosu dosya türlerini dönüştürmek ve çeşitli Excel formatlarıyla çalışmak için gerekli tüm bileşenleri içerir.
Nasıl Rehberi
CSV'ye DataTable Nasıl Oluşturulur ve İhraç Edilir?
Bir DataTable'yi CSV'ye dönüştürme işlemi, bir WorkBook oluşturmayı, veriyle doldurmayı ve IronXL'ın yerleşik CSV yazma işlevselliğini kullanmayı içerir. Bu yaklaşım, elle CSV dizileri oluşturmaktan veya geleneksel dosya akışı yöntemlerini kullanmaktan daha verimlidir.
Hangi Namespace'i İçe Aktarmalıyım?
Önce, IronXL namespace'i içe aktarın. IronXL, veritabanı odaklı uygulamalar için ideal hale gelerek DataSet ve DataTable nesnelerinin içe aktarımı ve ihraç edilmesi için kapsamlı destek sağlar.
:path=/static-assets/excel/content-code-examples/how-to/csharp-datatable-to-csv-3.cs
using IronXL;
Imports IronXL
Tam Kod Örneği Nedir?
Aşağıdaki kodu ekleyin:
:path=/static-assets/excel/content-code-examples/how-to/csharp-database-to-csv-datatable.cs
using IronXL;
using System;
using System.Data;
// Create a new DataTable object
DataTable table = new DataTable();
// Add a single column named "Example_DataSet" of type string
table.Columns.Add("Example_DataSet", typeof(string));
// Add rows to the DataTable
table.Rows.Add("0");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
table.Rows.Add("1");
table.Rows.Add("2");
table.Rows.Add("3");
// Create a new Excel workbook and set its author metadata
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "OJ";
// Get the default worksheet
WorkSheet ws = wb.DefaultWorkSheet;
// Initialize rowCounter for Excel sheet rows
int rowCount = 1;
// Loop through each row in the DataTable and add the data to the Excel worksheet
foreach (DataRow row in table.Rows)
{
// Populate worksheet cells with data from DataTable
ws["A" + (rowCount)].Value = row[0].ToString();
rowCount++;
}
// Save the workbook as a CSV file
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";"); // Will be saved as: Save_DataTable_CSV.Sheet1.csv
Imports IronXL
Imports System
Imports System.Data
' Create a new DataTable object
Dim table As New DataTable()
' Add a single column named "Example_DataSet" of type string
table.Columns.Add("Example_DataSet", GetType(String))
' Add rows to the DataTable
table.Rows.Add("0")
table.Rows.Add("1")
table.Rows.Add("2")
table.Rows.Add("3")
table.Rows.Add("1")
table.Rows.Add("2")
table.Rows.Add("3")
' Create a new Excel workbook and set its author metadata
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "OJ"
' Get the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet
' Initialize rowCounter for Excel sheet rows
Dim rowCount As Integer = 1
' Loop through each row in the DataTable and add the data to the Excel worksheet
For Each row As DataRow In table.Rows
' Populate worksheet cells with data from DataTable
ws("A" & rowCount).Value = row(0).ToString()
rowCount += 1
Next
' Save the workbook as a CSV file
wb.SaveAsCsv("Save_DataTable_CSV.csv", ";") ' Will be saved as: Save_DataTable_CSV.Sheet1.csv
Kod Adım Adım Nasıl Çalışır?
Yukarıdaki kod, bir DataTable yaratır, 'OJ'yi sahibi olarak belirten yeni bir çalışma kitabı oluşturur, ardından DataTable'dan gelen verileri Excel çalışma sayfasına eklemek için bir foreach döngüsünü kullanır. Son olarak, SaveAsCsv metodu veri tablosunu CSV'ye ihraç eder.
Süreç adım adım açıklanmıştır:
-
DataTable Oluşturma: Yeni bir
DataTablebaşlatın ve sütunlar ekleyerek şemasını tanımlayın. Bu, bir veritabanı tablosu yapısını tanımlamaya benzer. -
Veri Doldurma:
DataTable'ya satırlar ekleyin,Rows.Add()metodunu kullanarak. Her satır, CSV'ye dışa aktarılacak bir kayıt temsil eder. -
Çalışma Kitabı Oluşturma: IronXL'ın
WorkBook.Create()metodu yeni bir Excel çalışma kitabı başlatır. Gerekirse, birden fazla çalışma sayfası ile elektronik tablolar oluşturabilirsiniz. -
Hücre Doldurma: Foreach döngüsü
DataTablesatırları boyunca iterasyon yapar ve her değeri hücre referans söz dizimi (örneğin, 'A1', 'A2') kullanarak belirli bir çalışma sayfası hücresine eşler. - CSV İhracı:
SaveAsCsv()metodu, özel karakterlerin doğru kaçışları ve ayırıcı işlemesi dahil CSV biçimlendirme karmaşıklıklarını ele alır.
Gelişmiş DataTable Senaryoları Nelerdir?
Birden fazla sütuna sahip karmaşık DataTable'larda kodu şu şekilde genişletin:
// Create a DataTable with multiple columns
DataTable advancedTable = new DataTable();
advancedTable.Columns.Add("ID", typeof(int));
advancedTable.Columns.Add("Name", typeof(string));
advancedTable.Columns.Add("Price", typeof(decimal));
--snip--
workbook.SaveAsCsv("products.csv", ",");
// Create a DataTable with multiple columns
DataTable advancedTable = new DataTable();
advancedTable.Columns.Add("ID", typeof(int));
advancedTable.Columns.Add("Name", typeof(string));
advancedTable.Columns.Add("Price", typeof(decimal));
--snip--
workbook.SaveAsCsv("products.csv", ",");
' Create a DataTable with multiple columns
Dim advancedTable As New DataTable()
advancedTable.Columns.Add("ID", GetType(Integer))
advancedTable.Columns.Add("Name", GetType(String))
advancedTable.Columns.Add("Price", GetType(Decimal))
' --snip--
workbook.SaveAsCsv("products.csv", ",")
Çıkış Nasıl Görünür?
Çıktı Excel çalışma sayfası şu şekilde görünür:
Büyük DataTable'ları Nasıl Ele Alırım?
Binlerce satır içeren büyük DataTable'lerle çalışırken, IronXL mükemmel performansı korur. Kütüphane, büyük veri kümelerini verimli bir şekilde yönetir. Üretim ortamları için, filigranları kaldırmak ve tam işlevsellik sağlamak adına lisans anahtarınızı uygulayın.
Hata Yönetimi Nasıl Yapılır?
Dosya işlemleri yaparken her zaman doğru hata yönetimini uygulayın:
:path=/static-assets/excel/content-code-examples/how-to/csharp-datatable-to-csv-6.cs
try
{
// Your DataTable to CSV conversion code
WorkBook wb = WorkBook.Create();
// ... rest of the code
wb.SaveAsCsv("output.csv", ",");
Console.WriteLine("CSV file created successfully!");
}
catch (Exception ex)
{
Console.WriteLine($"Error creating CSV: {ex.Message}");
}
Imports System
Try
' Your DataTable to CSV conversion code
Dim wb As WorkBook = WorkBook.Create()
' ... rest of the code
wb.SaveAsCsv("output.csv", ",")
Console.WriteLine("CSV file created successfully!")
Catch ex As Exception
Console.WriteLine($"Error creating CSV: {ex.Message}")
End Try
Kütüphaneye Hızlı Erişim
IronXL API Referans Belgelendirmesi
IronXL API Referans Belgelendirmesi'ni kullanarak, Excel elektronik tablolarında hücreleri birleştirme, ayırma ve çalışma konularını öğrenin ve paylaşın.
IronXL API Referans BelgelendirmesiSıkça Sorulan Sorular
Karmaşık döngüler yazmadan C#'ta DataTable'ı CSV'ye nasıl dönüştürürüm?
IronXL, DataTable'ı CSV'ye dönüştürmek için basit bir tek satır çözümü sunar. Bir Çalışma Kitabı oluşturduktan ve onu DataTable verilerinizle doldurduktan sonra, SaveAsCsv() metodunu kullanarak döngüler yazmak veya Interop kullanmadan doğrudan CSV formatına aktarımda bulunabilirsiniz.
DataTable'dan CSV'ye dönüştürme kütüphanesi için kurulum seçenekleri nelerdir?
IronXL, Visual Studio'da NuGet Paket Yöneticisi aracılığıyla 'IronXL.Excel' aranarak veya NuGet komut satırı kullanılarak kurulabilir. Bu, bağımlılıkları otomatik olarak yönettiği ve kütüphaneyi güncel tuttuğu için tercih edilen yöntemdir.
DataTable'ı CSV'ye dönüştürmek için Microsoft Excel kurulumu bana gerekli mi?
Hayır, IronXL, Microsoft Excel veya Interop kurulumu gerektirmeden bağımsız olarak çalışır. C# uygulamalarında Excel dosyaları ve CSV aktarımlarıyla çalışırken kolaylık sağlayan bağımsız bir kütüphanedir.
DataTable'dan CSV'ye dönüştürme için hangi alanı ithal etmem gerekiyor?
C# dosyanızın üst kısmına 'using IronXL;' ekleyerek IronXL ad alanını ithal etmeniz gerekir. Bu, DataSet ve DataTable nesnelerinin ithalatı ve ihracatı için kapsamlı destek sağlar.
CSV'ye aktarırken özel bir ayıraç belirleyebilir miyim?
Evet, IronXL'in SaveAsCsv() metodu özel bir ayıraç belirtmenize izin verir. Örnek kodda bir virgül (",") ayıraç olarak kullanılır, ancak gereksinimlerinize uygun herhangi bir karakteri değiştirebilirsiniz.

