Altbilgi içeriğine atla
IRONXL KULLANARAK

C#'ta CSV Dosyasına Veri Nasıl Yazılır

Bu makale, IronXL kullanarak bir CSV dosyasının nasıl yazılacağını araştıracaktır.

IronXL Kutuphanesi

IronXL, C# uygulamalarında hesap tablosu dosyaları oluşturma, okuma ve düzenleme için kapsamlı işlevsellik sunan bir .NET Excel kutuphanesidir. Performans ve çıktı doğruluğu açısından üstündür. XLS, XLSX, XLSM, CSV ve TSV gibi çeşitli hesap tablosu dosya biçimlerini destekler. Ayrıca, Excel dosyalarından CSV, JSON, HTML, İkili, Bayt Dizisi, Veri Kümesi veya Veri Tablosu gibi biçimlere veri kaydetmenizi veya dışa aktarmanızı sağlar.

IronXL ile, geliştiriciler çalışma sayfaları ve hücre aralıkları ile kesintisiz çalışabilir, bu da veriyi manipüle etmek için zarif bir yaklaşım sunar. Formüllerin kolayca düzenlenmesini sağlar ve bir sayfa içindeki formüllerin yeniden hesaplanmasını kolaylaştırır. Veri sıralama aralığa, sütuna veya satıra dayanarak basittir. Bölmeler dondurarak, satır/sütunları otomatik boyutlandırarak ve satır/sütun ekleyerek/çıkararak düzeni değiştirebilirsiniz.

IronXL, kullanıcı parolaları ile Excel dosyalarını koruma ve düzenleme izinleri ayarlama yeteneği sunar. Ayrıca, Excel çalışma sayfalarından resim ekleme, çıkarma ve ayıklama özellikleri sağlar. Kutuphanesi, çeşitli hücre veri formatlarını destekleyerek birçok Excel işlevi içeren geniş bir yelpazeye sahiptir. Bu özellik, IronXL'yi Excel dosyalarıyla çalışma konusunda en sezgisel API'lerden biri yapar.

IronXL'nin önemli bir avantajı, makinede Microsoft Excel veya Office Interop bağımlılıklarına ihtiyaç duymamasıdır. Birçok platformda çalışan ve .NET 7, 6 ve 5 sürümleriyle uyumlu, kendi kendine yeten bir çözümdür. Ayrıca .NET Core 2 ve 3 ile standart 2 sürümünü de destekler. Excel hesap tabloları ile çalışmak için IronXL, .NET Framework 4.5 ve sonraki sürümleri ile uyumludur.

Bir Konsol Uygulaması Oluşturun

Gelişmiş bir uygulama oluşturmak için en son Visual Studio sürümü önerilir. Visual Studio, C# geliştirme için resmi IDE'dir ve kurulu olmalıdır. Microsoft Visual Studio web sitesinden indirebilirsiniz, eğer kurulu değilse.

Aşağıdaki adımlar 'DemoApp' adlı yeni bir proje oluşturacaktır.

  1. Visual Studio'yu açın ve 'Yeni Proje Oluştur' seçeneğine tıklayın.

C#'ta CSV Dosyasına Veri Yazma, Şekil 1: Visual Studio'yu Açın Visual Studio'yu Açın

  1. Konsol Uygulaması'nı seçin ve 'İleri'ye tıklayın.

C#'ta CSV Dosyasına Veri Yazma, Şekil 2: Visual Studio'da yeni bir proje oluşturun Visual Studio'da yeni bir proje oluşturun

  1. Projenin adını ayarlayın

C#'ta CSV Dosyasına Veri Yazma, Şekil 3: Yeni projenizi yapılandırın Yeni projenizi yapılandırın

  1. .NET sürümünü seçin. Kararlı sürüm .NET 6.0'ı seçin.

C#'ta CSV Dosyasına Veri Yazma, Şekil 4: .NET Framework seçimi .NET Framework seçimi

IronXL Kütüphanesini Kur

Proje oluşturulduğunda, IronXL kutuphanesi projeye kurulmalıdır. Bunu kurmak için aşağıdaki adımları izleyin.

  1. Çözüm Gezgini veya araçlardan NuGet Paket Yöneticisi'ni açın.

C#'ta CSV Dosyasına Veri Yazma, Şekil 5: NuGet Paket Yöneticisine gidin NuGet Paket Yöneticisine Yönlendirin

  1. IronXL Kütüphanesi'ni arayın ve mevcut projeyi seçin. Yükle'ye tıklayın.

C#'ta CSV Dosyasına Veri Yazma, Şekil 6: NuGet Paket Yöneticisi UI'da IronXL paketini arayın ve yükleyin IronXL paketini NuGet Paket Yöneticisi UI'de arayın ve yükleyin

Program.cs dosyasının en üstüne aşağıdaki namespace'i ekleyin:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

Create a New Workbook in C

IronXL, boş bir çalışma kitabı oluşturma kolaylığı sağlar. Bir çalışma kitabı, birden fazla çalışma sayfası içeren bir hesap tablosudur. Veriler hücrelerde depolanır. CSV de bir hesap tablosu gibi görünür ama bunun yerine bir CSV dosya uzantısına sahiptir.

// Creates a new instance of WorkBook Spreadsheet
WorkBook workBook = WorkBook.Create();
// Creates a new instance of WorkBook Spreadsheet
WorkBook workBook = WorkBook.Create();
' Creates a new instance of WorkBook Spreadsheet
Dim workBook As WorkBook = WorkBook.Create()
$vbLabelText   $csharpLabel

Şimdi, WorkBook içinde bir sayfa oluşturalım. Çalışma kitabında bir çalışma sayfası oluşturmanın birden fazla yolu vardır.

// Adds a default sheet to the workbook
WorkSheet defaultSheet = workBook.DefaultWorkSheet;

// Creates a worksheet with the name "Sheet1"
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
// Adds a default sheet to the workbook
WorkSheet defaultSheet = workBook.DefaultWorkSheet;

// Creates a worksheet with the name "Sheet1"
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
' Adds a default sheet to the workbook
Dim defaultSheet As WorkSheet = workBook.DefaultWorkSheet

' Creates a worksheet with the name "Sheet1"
Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
$vbLabelText   $csharpLabel

Mevcut çalışma kitabınıza daha fazla sayfa eklemek isterseniz, CreateWorkSheet metodunu kullanın.

Not: CSV dosyası zaten varsa WorkBook.LoadCSV metodunu kullanabilirsiniz. Mevcut bir CSV dosyasını yüklemek için bu kod örneği sayfasını görebilirsiniz.

WorkSheet Veri Yazma

CSV dosyalarını yazmak, IronXL kullanarak kolaydır. CSV'lere veri yazmak için Excel özellikleri sağlar. Belirtilen konumlara değer eklemek için hücre referansları kullanılabilir. Burada, bir foreach döngüsü kullanarak bazı çalışanların birkaç kaydını ekleyeceğim.

// Initialize an array of employee names
string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

// Starting row for data entry
int i = 2;

// Setting header titles for the columns
sheet["A1"].Value = "ID";
sheet["B1"].Value = "Name";
sheet["C1"].Value = "Salary";

// Populate each row with employee data
foreach (var employee in employeeNames)
{
    // Set values for ID, Name, and Salary
    sheet["A" + i].Value = i;
    sheet["B" + i].Value = employee;
    sheet["C" + i].Value = i * 1000;
    i++;
}
// Initialize an array of employee names
string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

// Starting row for data entry
int i = 2;

// Setting header titles for the columns
sheet["A1"].Value = "ID";
sheet["B1"].Value = "Name";
sheet["C1"].Value = "Salary";

// Populate each row with employee data
foreach (var employee in employeeNames)
{
    // Set values for ID, Name, and Salary
    sheet["A" + i].Value = i;
    sheet["B" + i].Value = employee;
    sheet["C" + i].Value = i * 1000;
    i++;
}
' Initialize an array of employee names
Dim employeeNames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }

' Starting row for data entry
Dim i As Integer = 2

' Setting header titles for the columns
sheet("A1").Value = "ID"
sheet("B1").Value = "Name"
sheet("C1").Value = "Salary"

' Populate each row with employee data
For Each employee In employeeNames
	' Set values for ID, Name, and Salary
	sheet("A" & i).Value = i
	sheet("B" & i).Value = employee
	sheet("C" & i).Value = i * 1000
	i += 1
Next employee
$vbLabelText   $csharpLabel

Yukarıdaki kod örneğinde, bir employeeNames dizisi oluşturuldu ve ilk satır başlıklarla ayarlandı: ID, Ad, Maaş. i değişkeni de 2 değeri ile başlatıldı, bu, başlıkların altındaki 2. satırdan itibaren kayıtları ekleyecek. foreach döngüsü listedeki her çalışanı işler ve bunları mevcut satıra ID ve maaş değerleriyle ekler. Döngü tamamlanmadan önce, i bir sonraki kayıt için bir sonraki satıra geçmek üzere arttırılır.

Verileri CSV dosyasına Kaydedin

Son adım CSV dosyasını kaydetmektir. IronXL, çalışma kitabını CSV dosyası olarak kaydetmek için SaveAsCsv metodunu sağlar. Bu metodun birinci parametresi CSV dosya adı ve ikinci parametresi ayırıcı belirtir.

// Save the modified workbook as a CSV file with a specified delimiter
workBook.SaveAsCsv("sample.csv", ",");
// Save the modified workbook as a CSV file with a specified delimiter
workBook.SaveAsCsv("sample.csv", ",");
' Save the modified workbook as a CSV file with a specified delimiter
workBook.SaveAsCsv("sample.csv", ",")
$vbLabelText   $csharpLabel

Tamam kod, şu şekildedir:

using System;
using IronXL;

class Program
{
    static void Main()
    {
        // Create a new workbook and worksheet
        WorkBook workBook = WorkBook.Create();
        WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

        // Initialize an array of employee names
        string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

        // Starting row for data entry
        int i = 2;

        // Setting header titles for the columns
        sheet["A1"].Value = "ID";
        sheet["B1"].Value = "Name";
        sheet["C1"].Value = "Salary";

        // Populate each row with employee data
        foreach (var employee in employeeNames)
        {
            // Set values for ID, Name, and Salary
            sheet["A" + i].Value = i;
            sheet["B" + i].Value = employee;
            sheet["C" + i].Value = i * 1000;
            i++;
        }

        // Save the modified workbook as a CSV file with a specified delimiter
        workBook.SaveAsCsv("sample.csv", ",");
    }
}
using System;
using IronXL;

class Program
{
    static void Main()
    {
        // Create a new workbook and worksheet
        WorkBook workBook = WorkBook.Create();
        WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");

        // Initialize an array of employee names
        string[] employeeNames = { "John", "Peter", "Harry", "Kevin", "Brian" };

        // Starting row for data entry
        int i = 2;

        // Setting header titles for the columns
        sheet["A1"].Value = "ID";
        sheet["B1"].Value = "Name";
        sheet["C1"].Value = "Salary";

        // Populate each row with employee data
        foreach (var employee in employeeNames)
        {
            // Set values for ID, Name, and Salary
            sheet["A" + i].Value = i;
            sheet["B" + i].Value = employee;
            sheet["C" + i].Value = i * 1000;
            i++;
        }

        // Save the modified workbook as a CSV file with a specified delimiter
        workBook.SaveAsCsv("sample.csv", ",");
    }
}
Imports System
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Create a new workbook and worksheet
		Dim workBook As WorkBook = WorkBook.Create()
		Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")

		' Initialize an array of employee names
		Dim employeeNames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }

		' Starting row for data entry
		Dim i As Integer = 2

		' Setting header titles for the columns
		sheet("A1").Value = "ID"
		sheet("B1").Value = "Name"
		sheet("C1").Value = "Salary"

		' Populate each row with employee data
		For Each employee In employeeNames
			' Set values for ID, Name, and Salary
			sheet("A" & i).Value = i
			sheet("B" & i).Value = employee
			sheet("C" & i).Value = i * 1000
			i += 1
		Next employee

		' Save the modified workbook as a CSV file with a specified delimiter
		workBook.SaveAsCsv("sample.csv", ",")
	End Sub
End Class
$vbLabelText   $csharpLabel

Çıktı

C#'ta CSV Dosyasına Veri Yazma, Şekil 7: Çıktı CSV dosyası Çıktı CSV dosyası

Özet

Bu makale, IronXL kullanarak C#'ta bir CSV dosyası yazmanın basit bir yaklaşımını sunar. IronXL ayrıca mevcut CSV dosyalarıyla zahmetsizce çalışabilme yeteneği sağlar. Ayrıca, CSV dosyaları yazmanıza, yeni Excel dosyaları oluşturmanıza ve bunlara basit söz dizimi ile veri yazmanıza olanak tanır. IronXL ayrıca Microsoft Office kurulu olmadan Excel dosyalarını okuma ve yazma için kullanılabilir. Farklı hesap tablosu formatları arasında dönüşüm için bu kod örneği sayfasını inceleyebilirsiniz.

IronXL, geliştirme için ücretsizdir ve ticari kullanım için lisanslanabilir. Ticari kullanım için IronXL ücretsiz denemesini de deneyebilirsiniz.

Sıkça Sorulan Sorular

C#'ta CSV dosyasına nasıl veri yazabilirim?

Verileri bir CSV dosyasına aktarmak için IronXL'in `SaveAsCsv` yöntemini kullanabilirsiniz. Önce bir çalışma kitabı ve çalışma sayfası oluşturun, hücrelere veri yazın ve ardından verileri CSV dosyası olarak kaydetmek için `workBook.SaveAsCsv("filename.csv", ",");` kullanın.

C#'ta CSV dosyaları yazmak için bir konsol uygulaması oluşturmanın adımları nelerdir?

CSV dosyaları yazmak için bir konsol uygulaması oluşturmak için Visual Studio'da yeni bir proje kurun, uygun .NET sürümünü seçin ve IronXL'i NuGet Paket Yöneticisi aracılığıyla yükleyin. Ardından, IronXL'i kullanarak bir çalışma kitabı oluşturun, bir çalışma sayfasına veri ekleyin ve CSV olarak kaydedin.

Microsoft Excel kullanmadan CSV dosyasına veri yazabilir miyim?

Evet, IronXL kullanarak Microsoft Excel olmadan CSV dosyasına veri yazabilirsiniz. Excel ve CSV dosyalarını programatik olarak manipüle etmenize olanak tanır ve Excel'in yüklü olmasını gerektirmez.

Visual Studio projesine IronXL nasıl yüklenir?

IronXL'i yüklemek için Visual Studio'da NuGet Paket Yöneticisini açıp 'IronXL' araması yaparak projeye eklemek için 'Yükle'ye tıklayabilirsiniz. Bu, Excel ve CSV dosyalarını yönetmek için IronXL fonksiyonlarını kullanmanıza olanak tanır.

IronXL hangi dosya formatlarını dışa aktarma için destekler?

IronXL, CSV, JSON, HTML, Binary, Byte Array, DataSet ve DataTable gibi çeşitli formatlara veri dışa aktarımını destekleyerek farklı veri işleme ihtiyaçları için çok yönlü hale getirir.

IronXL farklı .NET sürümleriyle uyumlu mu?

Evet, IronXL, farklı geliştirme ortamlarında esneklik sağlayarak .NET Core 2 ve 3, .NET 5, 6 ve 7 dahil olmak üzere birden fazla .NET sürümü ile uyumludur.

IronXL ticari projeler için kullanılabilir mi?

Evet, IronXL ticari amaçlarla lisanslanabilir. Ayrıca, geliştiricilerin ticari lisansa geçmeden önce özelliklerini test etmelerine olanak tanıyan bir ücretsiz deneme de sunar.

IronXL kullanarak C#'ta yeni bir çalışma kitabı ve çalışma sayfasını nasıl oluşturabilirim?

`WorkBook.Create()` kullanarak bir çalışma kitabı nesnesi başlatıp ardından buna yeni bir çalışma sayfası ekleyerek yeni bir çalışma kitabı ve çalışma sayfası oluşturabilirsiniz. Bu, çalışma sayfasına veri yazmaya başlamanızı sağlar.

IronXL herhangi bir Office Interop bağımlılığı gerektirir mi?

Hayır, IronXL, Office Interop bağımlılıklarını gerektirmeyen bağımsız bir kütüphanedir, bu da onu farklı platformlarda uygulamalara kullanmayı ve dağıtmayı kolay hale getirir.

Jordi Bardia
Yazılım Mühendisi
Jordi Python, C# ve C++ konularında en yetkin, Iron Software'deki yeteneklerini kullanmadığı zamanlarda; oyun programlıyor. Ürün testi, ürün geliştirme ve araştırma sorumluluklarını paylaşan Jordi, sürekli ürün gelişimine büyük değer katıyor. Çeşitli deneyimleri onu ...
Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara