C#'ta Veri Setini CSV'ye Nasıl Dönüştürülür
Aşağıdaki makale, bir C# veri kümesinin bir CSV dosyasına nasıl dönüştürüleceğini gösterecektir.
IronXL, CSV formatı veya Excel dosyalarıyla çalışmak için harika bir çözümdür. IronXL, geliştirme için ücretsizdir, kullanımı kolaydır ve herhangi bir türdeki elektronik tablo ile çalışmak için geniş işlevsellikler sağlar. Güvenlidir ve yüksek performans sağlar. İlerlemeye başlamadan önce, IronXL hakkında kısa bir tanıtım yapalım.
IronXL
IronXL, C# geliştiricilerinin, .NET uygulamaları ve web sitelerinde Excel (ve diğer elektronik tablo dosyalarını) okuyup, oluşturup ve düzenlemelerine olanak tanıyan bir Iron Software kütüphanesidir.
IronXL, C# ve .NET'te Excel ve diğer elektronik tablo dosyalarıyla çalışmanın hızlı ve kolay bir yoludur. IronXL, Office Excel Interop gerektirmeksizin .NET Framework, .NET Core ve Azure ile çok iyi çalışır. IronXL, Microsoft Office'in kurulumunu gerektirmez veya başka bu tür bağımlılıkları içermez.
Bir veri kümesi için bir CSV dosyası oluşturma ve kodunu yazma işlemlerine başlayalım.
Yeni Bir Visual Studio Projesi Oluşturun
Visual Studio IDE'yi açın; Visual Studio'nun en son sürümü önerilir, ancak tercih ettiğiniz herhangi bir sürümü kullanabilirsiniz. Yeni bir proje oluşturma adımlarının sürüme göre farklılık gösterebileceğini unutmayın.
Visual Studio'nun başlangıç penceresi
Yeni bir Proje Oluştur'a tıklayın. Aşağıda gösterildiği gibi yeni bir pencere görünecektir.
Visual Studio'da yeni proje oluşturun
Listeden tercih ettiğiniz proje şablonunu seçin. İleri butonuna tıklayın ve aşağıda gösterilen yeni bir pencere açılacaktır.
Yeni oluşturulan projeyi yapılandırma
Projenizin adını verin, konumunu seçin ve İleri butonuna basın. Aşağıda gösterildiği gibi yeni bir pencere görünecektir.
.NET Framework sürümünü seç
Hedef .NET Framework'ü seçin. IronXL her .NET Framework'ü desteklediğinden, ihtiyaçlarınıza en uygun olanı seçebilirsiniz. Bu eğitimde .NET 7 kullanılacaktır. Oluştur butonuna tıklayın ve aşağıda gösterildiği gibi yeni bir proje oluşturulacaktır.
Visual Studio'da yeni bir Konsol Uygulaması
Şimdi bu uygulamada kullanmak için IronXL NuGet Paketini yükleyin.
IronXL Yükle
NuGet Paket Yöneticisi Konsolunu açın ve aşağıdaki komutu girin.
Install-Package IronXL.Excel
NuGet Paketi aşağıda gösterildiği gibi yüklenecek ve kullanıma hazır olacaktır.
IronXL paketinin ve paket bağımlılıklarının kurulumu
Şimdi, C#'ta bir veri kümesini bir CSV dosyasına dönüştürmek için biraz kod yazalım.
Bu örnek, bir SQL sunucu veritabanından veri getirecektir. SQL DB'den veri kümesini aldıktan sonra, bu giriş verilerini kullanarak bir CSV dosyası oluşturacağız.
Veri Tablosu Oluştur
İlk adım, SQL'den veri doldurmaktır, ancak tercih ettiğiniz herhangi bir veri kaynağını kullanabilirsiniz.
Bu eğitimde aşağıdaki veri kullanılmaktadır:
Örnek veriyle yeni bir veritabanı oluşturma
Örnek veriyi oluşturmak için SQL komut dosyası şöyledir:
USE Test_DB;
CREATE TABLE STUDENT_DATA
(
REG_NUM INT PRIMARY KEY,
FIRST_NAME VARCHAR(30),
LAST_NAME VARCHAR(30),
CLASS VARCHAR(5),
CONTACT_NUM VARCHAR(15)
);
INSERT INTO STUDENT_DATA
VALUES
(123, 'JHON', 'SMITH', '2', '(223) 444-1234'),
(124, 'THOMAS', 'CHARLES', '2', '(332) 555-1235'),
(125, 'WILLIAM', 'RICHARD', '2', '(432) 666-1236'),
(126, 'JAMES', 'BOND', '2', '(543) 777-1237'),
(127, 'CRISTOPHER', 'MICHAL', '2', '(555) 999-1238'),
(128, 'DONALD', 'MARK', '2', '(777) 888-1239');
Veri tablosunu bir CSV dosyasına aktarmak için kullanılan C# kodu aşağıdadır.
using System;
using System.Data;
using System.Data.SqlClient;
using IronXL;
class Program
{
// Method to retrieve data from SQL database and return as DataTable
public static DataTable GetData()
{
// Define connection string (modify accordingly for your local server)
string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
string query = "SELECT * FROM STUDENT_DATA";
try
{
// Create SQL connection
using SqlConnection conn = new SqlConnection(connString);
// Create SQL command
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
// Create data adapter
using SqlDataAdapter da = new SqlDataAdapter(cmd);
// Query the database and return the result to a data table
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
catch (Exception ex)
{
Console.WriteLine($"An error occurred: {ex.Message}");
throw;
}
}
static void Main(string[] args)
{
// Retrieve data and store it in a DataTable
DataTable table = GetData();
// Create a new Workbook
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "JOHN";
// Use the default worksheet
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
// Populate the worksheet with data from the DataTable
foreach (DataRow row in table.Rows)
{
ws[$"A{rowCount}"].Value = row[0].ToString();
ws[$"B{rowCount}"].Value = row[1].ToString();
ws[$"C{rowCount}"].Value = row[2].ToString();
ws[$"D{rowCount}"].Value = row[3].ToString();
ws[$"E{rowCount}"].Value = row[4].ToString();
rowCount++;
}
// Save the workbook as a CSV file
wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv");
}
}
using System;
using System.Data;
using System.Data.SqlClient;
using IronXL;
class Program
{
// Method to retrieve data from SQL database and return as DataTable
public static DataTable GetData()
{
// Define connection string (modify accordingly for your local server)
string connString = @"server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;";
string query = "SELECT * FROM STUDENT_DATA";
try
{
// Create SQL connection
using SqlConnection conn = new SqlConnection(connString);
// Create SQL command
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
// Create data adapter
using SqlDataAdapter da = new SqlDataAdapter(cmd);
// Query the database and return the result to a data table
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
catch (Exception ex)
{
Console.WriteLine($"An error occurred: {ex.Message}");
throw;
}
}
static void Main(string[] args)
{
// Retrieve data and store it in a DataTable
DataTable table = GetData();
// Create a new Workbook
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
wb.Metadata.Author = "JOHN";
// Use the default worksheet
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
// Populate the worksheet with data from the DataTable
foreach (DataRow row in table.Rows)
{
ws[$"A{rowCount}"].Value = row[0].ToString();
ws[$"B{rowCount}"].Value = row[1].ToString();
ws[$"C{rowCount}"].Value = row[2].ToString();
ws[$"D{rowCount}"].Value = row[3].ToString();
ws[$"E{rowCount}"].Value = row[4].ToString();
rowCount++;
}
// Save the workbook as a CSV file
wb.SaveAsCsv(@"D:\Tutorial Project\Save_DataTable_CSV.csv");
}
}
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports IronXL
Friend Class Program
' Method to retrieve data from SQL database and return as DataTable
Public Shared Function GetData() As DataTable
' Define connection string (modify accordingly for your local server)
Dim connString As String = "server=DESKTOP-NIP3TOE\SQLEXPRESS; Database=Test_DB; Integrated Security=True;"
Dim query As String = "SELECT * FROM STUDENT_DATA"
Try
' Create SQL connection
Using conn As New SqlConnection(connString)
' Create SQL command
Dim cmd As New SqlCommand(query, conn)
conn.Open()
' Create data adapter
Using da As New SqlDataAdapter(cmd)
' Query the database and return the result to a data table
Dim dt As New DataTable()
da.Fill(dt)
Return dt
End Using
End Using
Catch ex As Exception
Console.WriteLine($"An error occurred: {ex.Message}")
Throw
End Try
End Function
Shared Sub Main(ByVal args() As String)
' Retrieve data and store it in a DataTable
Dim table As DataTable = GetData()
' Create a new Workbook
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
wb.Metadata.Author = "JOHN"
' Use the default worksheet
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1
' Populate the worksheet with data from the DataTable
For Each row As DataRow In table.Rows
ws($"A{rowCount}").Value = row(0).ToString()
ws($"B{rowCount}").Value = row(1).ToString()
ws($"C{rowCount}").Value = row(2).ToString()
ws($"D{rowCount}").Value = row(3).ToString()
ws($"E{rowCount}").Value = row(4).ToString()
rowCount += 1
Next row
' Save the workbook as a CSV file
wb.SaveAsCsv("D:\Tutorial Project\Save_DataTable_CSV.csv")
End Sub
End Class
Kod Açıklaması
-
Metod
GetData(), bir SQL Sunucu veritabanından verileri alır ve bunları birDataTableolarak döndürür. -
Mainmetodunda, IronXL kullanılarak birWorkBookoluşturulur ve ardından veriler birWorkSheet'ye doldurulur. -
Bir
foreachdöngüsü,DataTable'in satırları üzerinde iterasyon yaparak her değeriWorkSheet'ye yeni bir satır olarak ekler. - Son olarak, CSV dosyası IronXL tarafından sağlanan
SaveAsCsvfonksiyonu kullanılarak kaydedilir.
Çıktı
Bu program tarafından üretilen CSV dosyası aşağıdaki gibidir:
CSV çıkış dosyası
CSV dosyasının doğru şekilde oluşturulduğu ve verilen girişle uyumlu olduğu açıktır.
Özet
Bu makale, bir veri kümesinden C#'ta CSV dosyası oluşturmayı gösterdi. Kütüphane ayrıca C# kullanarak CSV dosyalarını okuma yeteneğine de sahiptir. SQL Server veri tabanındaki veri kümesi doldurulur ve üç adımda bir CSV dosyası oluşturur:
- SQL Server'dan veri alın.
- Bir veri tablosuna veri doldurun.
- O veri tablosundan bir CSV dosyası oluşturun.
Yukarıda gösterildiği gibi, IronXL kullanarak .NET 7'de bir CSV dosyası oluşturmak çok kolaydır. Programın performansı, .NET 7 ve IronXL ile yazıldığı için olağanüstüdür. IronXL, Excel dosyaları oluşturma, okuma ve işleme gibi diğer yararlı özellikler de sunar. Daha fazla ayrıntı için lütfen resmi belgeler sayfasını ziyaret edin.
Ayrıca, IronPDF geliştiricilere PDF belgelerini resimlere dönüştürme ve bir PDF'den metin ve içerik çıkarma yöntemlerini sunar. Ayrıca IronPDF, PDF'lerde grafikleri render etme, barkod ekleme, şifrelerle güvenliği artırma programatik olarak da yapabilir.
IronXL'in ücretsiz sürümü, geliştirme amaçlı olarak kullanılmaktadır. Bir uygulamayı üretim ortamına dağıtmak için lütfen ücretsiz bir deneme sürümünü veya ticari lisansını edinin. IronXL, beş kütüphaneden oluşan Iron Suite'in bir parçasıdır:
- Bugün incelenen IronXL.
- PDF dosyaları oluşturma, okuma ve işleme için IronPDF
- Görüntülerden metin çıkarmak için IronOCR
- Barkod okuma ve oluşturma için IronBarcode
- Web sitelerinden yapısal veri çıkarmak için IronWebScraper.
Bu ürünlerin hepsini bir arada satın alırsanız, iki ürün fiyatına alabilirsiniz.
Sıkça Sorulan Sorular
C# veri kümesini CSV dosyasına nasıl dönüştürebilirim?
C# veri kümesini CSV dosyasına dönüştürmek için IronXL kullanabilirsiniz. İlk olarak, verileri SQL Server veritabanı gibi bir kaynaktan alın ve bir VeriTablosuna doldurun. Ardından, IronXL kullanarak VeriTablosunu CSV dosyasına dışa aktarın.
.NET'te Excel dosyalarıyla çalışmak için Microsoft Office gerekli mi?
Hayır, IronXL kullanırken .NET'te Excel dosyalarıyla çalışmak için Microsoft Office gerekmez. IronXL, Office veya Interop bağımlılıklarına ihtiyaç duymadan bağımsız olarak çalışır.
.NET'te elektronik tabloları işlemek için IronXL'yi en iyi şekilde nasıl kurarım?
.NET'teki elektronik tabloları işlemek için IronXL'yi kurmanın en iyi yolu Visual Studio'daki NuGet Paket Yöneticisi Konsolunu kullanmaktır. Şu komutu kullanın: Install-Package IronXL.Excel.
IronXL, elektronik tablolarla çalışırken üretkenliği nasıl artırır?
IronXL, geliştiricilerin .NET uygulamaları içinde hızla ve kolaylıkla Excel ve CSV dosyalarını okumasını, oluşturmasını ve düzenlemesini sağlar, ek yazılım kurulumlarına veya bağımlılıklarına ihtiyaç duymadan.
IronXL herhangi bir veri kaynağından CSV dosyaları oluşturabilir mi?
Evet, IronXL kullanarak herhangi bir veri kaynağından CSV dosyaları oluşturabilirsiniz. Makale, bir SQL Server veritabanından VeriTablosunu doldurarak ve ardından IronXL kullanılarak CSV'ye dışa aktarılarak bunu gösterir.
IronXL, en son .NET sürümleri ile uyumlu mu?
Evet, IronXL en son .NET sürümleri, .NET 7 dahil, ile uyumludur ve bu platformlarda geliştirilmiş performans faydaları sunar.
Elektronik tablo görevleri için IronXL kullanmanın temel avantajları nelerdir?
IronXL kullanmanın temel avantajları arasında, Microsoft Office olmadan elektronik tablo işlemek, tüm .NET sürümlerini desteklemek ve veri kümelerini hızlı ve kolay bir şekilde CSV dosyalarına dönüştürmek yer alır.
Iron Suite nedir ve neyi içerir?
Iron Suite, IronXL ile Excel dosyaları, IronPDF ile PDF'ler, IronOCR ile görüntülerden metin çıkarımı, IronBarcode ile barkodlar ve IronWebScraper ile web veri çıkartımını içeren bir kütüphane koleksiyonudur.




