IronXL kullanarak C#'da Excel dosyaları nasıl okunur.
C# uygulamalarında Excel dosyalarını okumak, iş yazılımı, veri işleme hatları ve raporlama sistemleri için yeniden tekrar eden bir gereksinimdir. Microsoft Office Interop kullanarak geleneksel yaklaşımlar, her sunucuda veya iş istasyonunda Excel yüklü olmasını gerektirir, bu da dağıtımı ve lisanslamayı zorlaştıran hassas bağımlılıklar yaratır. IronXL, bu bağımlılığı tamamen ortadan kaldırır -- uygulamanız, herhangi bir ortamda Ofis yüklü olmadan XLSX, XLS, CSV ve diğer elektronik tabloları okuyabilir.
Bu eğitim, ihtiyacınız olan her tekniği size adım adım öğretir: kütüphanenin yüklenmesi, çalışma kitapları yükleme, yazı türüne uygun hücre değerlerini çıkarma, satır ve sütunları yineleme, toplama hesaplamaları yapma ve eksiksiz bir çalışan verisi okuyucusu oluşturma. Tüm örnekler, .NET 10'u hedefleyen en üst düzey ifadelerle C# kullanır.
Excel İşleme için IronXL Nasıl Kurulur?
Visual Studio'da NuGet Paket Yöneticisi Konsolunu açın ve projeye IronXL eklemek için aşağıdaki komutu çalıştırın. Alternatif olarak, terminal üzerinden çalışma tercih ediyorsanız, ikinci satırdaki .NET CLI komutunu kullanın:
Install-Package IronXL.Excel
Paket saniyeler içinde yüklenir ve projeye tek yönetilen montaj referansı ekler. COM kaydı yok, Office Birincil Interop Montajları yok ve yönetilecek sürüm özel Excel bağımlılıkları yok.
Kurulumdan sonra, elektronik tablo verileriyle çalışan her dosyanın en üstüne using yönergesini ekleyin:
using IronXL;
using IronXL;
Imports IronXL
Bu tek namespace size WorkBook, WorkSheet, hücre aralıkları, tipik değer özellikleri, toplama fonksiyonları ve diğer tüm IronXL türlerine erişim sağlar. IronXL.Excel için NuGet Galeri sayfası, mevcut her sürümü ve tam bağımlılık ağacını listeler.
IronXL Hangi Excel Dosyası Biçimlarını Destekler?
Uygulamanızın başa çıkması gereken formatları anlamak, yaptığınız API çağrılarını ve projenizin benimsediği saklama kararlarını şekillendirir.
XLSX -- Excel 2007'den bu yana varsayılan formattır -- XML dosyalarının bir ZIP arşividir. Bir milyondan fazla satırı, zengin biçimlendirme, pivot tablolar ve adlandırılmış aralıkları destekler. Çoğu modern veri hattı, XLSX çıktısı üretir, bu nedenle bu en sık karşılaştığınız formattır.
XLS, Excel 2003 ve öncesinde kullanılan eski ikili formattır. Bazı kurumsal sistemler hala XLS çıkarır, bu nedenle, eski altyapıyla entegrasyon yaparken bu formata güvenilir destek vermek önemlidir. IronXL, herhangi bir özel yapılandırma gerektirmeden XLS dosyalarını okur.
XLSM, makro desteği ile XLSX'i genişletir. IronXL, yerleştirilmiş VBA kodunu çalıştırmasa da, sunucu tarafı veri çıkarma için doğru davranış olan XLSM dosyalarından elektronik tablo verilerini okur.
CSV ve TSV sistemler arası veri değişimi için yaygın olarak kullanılan düz metin tab lolarlı formatlardır. WorkBook.LoadCSV virgülle ayrılmış dosyaları işler ve IronXL, veri okuma mantığınızı kaynak formatından bağımsız olarak aynı tutarak kodunuzun gezinebildiği aynı WorkBook nesnesini döndürür.
IronXL, WorkBook.Load çağırdığınızda dosya formatını dosya uzantısından otomatik olarak algılar. Çoğu durumda formatı açıkça belirtmenize gerek yoktur; bu, birden fazla kaynaktan gelen girdileri işlemek zorunda olan kodu basitleştirir.
| Biçim | Uzantı | Yükleme Yöntemi | Açıklamalar |
|---|---|---|---|
| Open XML Çalışma Kitabı | .xlsx | WorkBook.Load | Varsayılan modern format |
| Eski İkili | .xls | WorkBook.Load | Excel 2003 ve öncesi |
| Makro etkin | .xlsm | WorkBook.Load | Veri okunur; makrolar çalıştırılmaz |
| Virgülle ayrılmış | .csv | WorkBook.LoadCSV | Optimizasyonlu CSV çözümleyicisi |
| Tab ile ayrılmış | .tsv | WorkBook.Load | Tab ayırıcı varyantı |
Excel Çalışma Kitabı Nasıl Yüklenir ve Okunur?
WorkBook.Load metodu tüm dosya tabanlı işlemler için giriş noktasıdır. Dosya yolunu geçin ve IronXL, hemen sorgulayabileceğiniz tam dolu bir çalışma kitabı objesi sunar.
using IronXL;
// Load the workbook; format is detected automatically
WorkBook workbook = WorkBook.Load("Employees.xlsx");
// Access the first worksheet
WorkSheet sheet = workbook.DefaultWorkSheet;
// Read a single cell by A1 address
string companyName = sheet["A1"].StringValue;
Console.WriteLine($"Company: {companyName}");
// Access sheets by name or by zero-based index
WorkSheet byName = workbook.GetWorkSheet("Sales");
WorkSheet byIndex = workbook.WorkSheets[1];
// Load a password-protected file
WorkBook secured = WorkBook.Load("Confidential.xlsx", "p@ssw0rd");
using IronXL;
// Load the workbook; format is detected automatically
WorkBook workbook = WorkBook.Load("Employees.xlsx");
// Access the first worksheet
WorkSheet sheet = workbook.DefaultWorkSheet;
// Read a single cell by A1 address
string companyName = sheet["A1"].StringValue;
Console.WriteLine($"Company: {companyName}");
// Access sheets by name or by zero-based index
WorkSheet byName = workbook.GetWorkSheet("Sales");
WorkSheet byIndex = workbook.WorkSheets[1];
// Load a password-protected file
WorkBook secured = WorkBook.Load("Confidential.xlsx", "p@ssw0rd");
Imports IronXL
' Load the workbook; format is detected automatically
Dim workbook As WorkBook = WorkBook.Load("Employees.xlsx")
' Access the first worksheet
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
' Read a single cell by A1 address
Dim companyName As String = sheet("A1").StringValue
Console.WriteLine($"Company: {companyName}")
' Access sheets by name or by zero-based index
Dim byName As WorkSheet = workbook.GetWorkSheet("Sales")
Dim byIndex As WorkSheet = workbook.WorkSheets(1)
' Load a password-protected file
Dim secured As WorkBook = WorkBook.Load("Confidential.xlsx", "p@ssw0rd")
DefaultWorkSheet özelliği ilk tabakayı döndürür ve çoğu tek tabaka dosyasını kapsar. Dosyanız birden fazla tabaka içerdiğinde, GetWorkSheet isimle alır ve WorkSheets[n] sıfır tabanlı indeksle alır. Çalışma Kitabı API referansı, çalışma kitabı objesi üzerindeki her aşırı yükleme ve özelliği belgeler.

Giriş

Çıktı

Typed Hücre Değerlerini Excel'den Nasıl Okursunuz?
IronXL'deki her hücre, ihtiyacınız olan tam veri türünü döndüren yazı türü özellikleri sunar -- manuel ayrıştırma veya tür dönüştürme gerektirmez. Yazı türü özellikleri, temel hücre temsilinden otomatik olarak dönüştürmeyi yönetir:
using IronXL;
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Extract typed values from row 2
int employeeId = sheet["A2"].IntValue;
string name = sheet["B2"].StringValue;
string department = sheet["C2"].StringValue;
decimal salary = sheet["D2"].DecimalValue;
DateTime hireDate = sheet["E2"].DateTimeValue;
Console.WriteLine($"ID: {employeeId}");
Console.WriteLine($"Name: {name}");
Console.WriteLine($"Department: {department}");
Console.WriteLine($"Salary: {salary:C}");
Console.WriteLine($"Hired: {hireDate:d}");
// Use the Text property for the formatted display value
string formattedSalary = sheet["D2"].Text; // "$75,000.00"
string formattedDate = sheet["E2"].Text; // "28/02/2026"
// Guard against empty cells before reading
if (!sheet["B3"].IsEmpty)
{
string value = sheet["B3"].StringValue;
}
using IronXL;
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Extract typed values from row 2
int employeeId = sheet["A2"].IntValue;
string name = sheet["B2"].StringValue;
string department = sheet["C2"].StringValue;
decimal salary = sheet["D2"].DecimalValue;
DateTime hireDate = sheet["E2"].DateTimeValue;
Console.WriteLine($"ID: {employeeId}");
Console.WriteLine($"Name: {name}");
Console.WriteLine($"Department: {department}");
Console.WriteLine($"Salary: {salary:C}");
Console.WriteLine($"Hired: {hireDate:d}");
// Use the Text property for the formatted display value
string formattedSalary = sheet["D2"].Text; // "$75,000.00"
string formattedDate = sheet["E2"].Text; // "28/02/2026"
// Guard against empty cells before reading
if (!sheet["B3"].IsEmpty)
{
string value = sheet["B3"].StringValue;
}
Imports IronXL
Dim workbook As WorkBook = WorkBook.Load("Employees.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
' Extract typed values from row 2
Dim employeeId As Integer = sheet("A2").IntValue
Dim name As String = sheet("B2").StringValue
Dim department As String = sheet("C2").StringValue
Dim salary As Decimal = sheet("D2").DecimalValue
Dim hireDate As DateTime = sheet("E2").DateTimeValue
Console.WriteLine($"ID: {employeeId}")
Console.WriteLine($"Name: {name}")
Console.WriteLine($"Department: {department}")
Console.WriteLine($"Salary: {salary:C}")
Console.WriteLine($"Hired: {hireDate:d}")
' Use the Text property for the formatted display value
Dim formattedSalary As String = sheet("D2").Text ' "$75,000.00"
Dim formattedDate As String = sheet("E2").Text ' "28/02/2026"
' Guard against empty cells before reading
If Not sheet("B3").IsEmpty Then
Dim value As String = sheet("B3").StringValue
End If
Text özelliği, sayısal değer yerine formatlanmış sayı dizisine ihtiyacınız olduğunda faydalı olan, görüntüleme değerini Excel'de formatlandığı gibi tam olarak döndürür. Excel formülleri içeren hücreler için IronXL ifadesi değerlendirir ve hesaplanan sonucu aynı yazı türü özellikleri aracılığıyla geri döndürür. Ek değer özellikleri -- BoolValue, DoubleValue, FloatValue -- hücre değeri referansında görünür.
Excel Satırları ve Sütunları Boyunca Nasıl Gezilir?
Bir veri kümesindeki her kaydı işlemek, satır ve sütunları yinelemeyi gerektirir. IronXL'nın aralık sözdizimi, Excel'in A1 notasyonu üzerine doğrudan eşlenir, bu nedenle bir hücre bloğu seçmek, elektronik tablo formülleri yazmış olan herkes için tanıdıktır:
using IronXL;
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Iterate a single column range
Console.WriteLine("Employee List:");
foreach (var cell in sheet["B2:B100"])
{
if (!string.IsNullOrEmpty(cell.Text))
Console.WriteLine($" - {cell.Text}");
}
// Iterate all rows and all columns using the Rows property
foreach (var row in sheet.Rows)
{
foreach (var cell in row)
Console.Write(cell.Text.PadRight(15));
Console.WriteLine();
}
using IronXL;
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Iterate a single column range
Console.WriteLine("Employee List:");
foreach (var cell in sheet["B2:B100"])
{
if (!string.IsNullOrEmpty(cell.Text))
Console.WriteLine($" - {cell.Text}");
}
// Iterate all rows and all columns using the Rows property
foreach (var row in sheet.Rows)
{
foreach (var cell in row)
Console.Write(cell.Text.PadRight(15));
Console.WriteLine();
}
Imports IronXL
Dim workbook As WorkBook = WorkBook.Load("Employees.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
' Iterate a single column range
Console.WriteLine("Employee List:")
For Each cell In sheet("B2:B100")
If Not String.IsNullOrEmpty(cell.Text) Then
Console.WriteLine($" - {cell.Text}")
End If
Next
' Iterate all rows and all columns using the Rows property
For Each row In sheet.Rows
For Each cell In row
Console.Write(cell.Text.PadRight(15))
Next
Console.WriteLine()
Next
Aralık sheet["B2:B100"], hücre nesnelerinin bir enumerable koleksiyonunu döndürür. string.IsNullOrEmpty kontrolü boş satırları zarifçe atlar. Rows özelliği -- çalışma sayfası veri aralığı kılavuzunda belgelenmiştir -- sayfayı bir satır bir satır yürür ve her satırın hücrelerini önceden sütun sayısını bilmenizi gerektirmeden ortaya çıkarır.
Çıktı

Excel Verileri Üzerinde Toplama Hesaplamaları Nasıl Çalıştırılır?
IronXL, hücre aralıklarında doğrudan sonuçları hesaplamak için manuel birikim döngüleri gerektirmeyen toplama fonksiyonları içerir:
using IronXL;
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Built-in aggregate methods work on any named range
decimal total = sheet["D2:D200"].Sum();
decimal highest = sheet["D2:D200"].Max();
decimal lowest = sheet["D2:D200"].Min();
decimal average = sheet["D2:D200"].Avg();
Console.WriteLine($"Total Payroll: {total:C}");
Console.WriteLine($"Highest Salary: {highest:C}");
Console.WriteLine($"Lowest Salary: {lowest:C}");
Console.WriteLine($"Average Salary: {average:C}");
// Combine with LINQ for filtered aggregation
decimal itTotal = sheet["D2:D200"]
.Where(c => sheet[$"C{c.RowIndex}"].StringValue == "IT")
.Sum(c => c.DecimalValue);
Console.WriteLine($"IT Department Total: {itTotal:C}");
using IronXL;
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Built-in aggregate methods work on any named range
decimal total = sheet["D2:D200"].Sum();
decimal highest = sheet["D2:D200"].Max();
decimal lowest = sheet["D2:D200"].Min();
decimal average = sheet["D2:D200"].Avg();
Console.WriteLine($"Total Payroll: {total:C}");
Console.WriteLine($"Highest Salary: {highest:C}");
Console.WriteLine($"Lowest Salary: {lowest:C}");
Console.WriteLine($"Average Salary: {average:C}");
// Combine with LINQ for filtered aggregation
decimal itTotal = sheet["D2:D200"]
.Where(c => sheet[$"C{c.RowIndex}"].StringValue == "IT")
.Sum(c => c.DecimalValue);
Console.WriteLine($"IT Department Total: {itTotal:C}");
Imports IronXL
Dim workbook As WorkBook = WorkBook.Load("Employees.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
' Built-in aggregate methods work on any named range
Dim total As Decimal = sheet("D2:D200").Sum()
Dim highest As Decimal = sheet("D2:D200").Max()
Dim lowest As Decimal = sheet("D2:D200").Min()
Dim average As Decimal = sheet("D2:D200").Avg()
Console.WriteLine($"Total Payroll: {total:C}")
Console.WriteLine($"Highest Salary: {highest:C}")
Console.WriteLine($"Lowest Salary: {lowest:C}")
Console.WriteLine($"Average Salary: {average:C}")
' Combine with LINQ for filtered aggregation
Dim itTotal As Decimal = sheet("D2:D200") _
.Where(Function(c) sheet($"C{c.RowIndex}").StringValue = "IT") _
.Sum(Function(c) c.DecimalValue)
Console.WriteLine($"IT Department Total: {itTotal:C}")
Sum, Min, Max ve Avg otomatik olarak boş hücreleri atlar ve sahne arkasında sayısal dönüşümü halleder. Aralığa LINQ sorgularını zincirlemek, size filtrelenmiş toplamlar verir -- bölüm alt toplamları, tarih aralığı toplamları, ve koşullu sayımlar -- tümü IronXL API içindedir.
Eksiksiz Bir Çalışan Verisi Okuyucusu Nasıl Oluşturulur?
Aşağıdaki örnek, şimdiye kadar ele alınan her şeyi içeren, bir çalışan elektronik tablosunu yükleyen, her kaydı biçimlendiren, maaş toplamlarını toplayan, yaz-back'i yöneten ve hataları zarifçe yakalayan üretime hazır bir konsol uygulaması oluşturur:
using IronXL;
try
{
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
Console.WriteLine("=== Employee Data Report ===\n");
int rowNumber = 2;
decimal totalSalary = 0m;
int employeeCount = 0;
while (!string.IsNullOrEmpty(sheet[$"A{rowNumber}"].StringValue))
{
int id = sheet[$"A{rowNumber}"].IntValue;
string name = sheet[$"B{rowNumber}"].StringValue;
string department = sheet[$"C{rowNumber}"].StringValue;
decimal salary = sheet[$"D{rowNumber}"].DecimalValue;
Console.WriteLine($"{id,4} {name,-20} {department,-15} {salary,10:C}");
totalSalary += salary;
employeeCount += 1;
rowNumber += 1;
}
Console.WriteLine($"\nTotal Employees: {employeeCount}");
Console.WriteLine($"Total Payroll: {totalSalary:C}");
// Write a new record back to the sheet and save
sheet["A10"].Value = 1010;
sheet["B10"].Value = "Jane Doe";
sheet["C10"].Value = "Finance";
sheet["D10"].Value = 75000;
workbook.SaveAs("Employees-Updated.xlsx");
}
catch (Exception ex)
{
Console.WriteLine($"Error reading Excel file: {ex.Message}");
}
using IronXL;
try
{
WorkBook workbook = WorkBook.Load("Employees.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
Console.WriteLine("=== Employee Data Report ===\n");
int rowNumber = 2;
decimal totalSalary = 0m;
int employeeCount = 0;
while (!string.IsNullOrEmpty(sheet[$"A{rowNumber}"].StringValue))
{
int id = sheet[$"A{rowNumber}"].IntValue;
string name = sheet[$"B{rowNumber}"].StringValue;
string department = sheet[$"C{rowNumber}"].StringValue;
decimal salary = sheet[$"D{rowNumber}"].DecimalValue;
Console.WriteLine($"{id,4} {name,-20} {department,-15} {salary,10:C}");
totalSalary += salary;
employeeCount += 1;
rowNumber += 1;
}
Console.WriteLine($"\nTotal Employees: {employeeCount}");
Console.WriteLine($"Total Payroll: {totalSalary:C}");
// Write a new record back to the sheet and save
sheet["A10"].Value = 1010;
sheet["B10"].Value = "Jane Doe";
sheet["C10"].Value = "Finance";
sheet["D10"].Value = 75000;
workbook.SaveAs("Employees-Updated.xlsx");
}
catch (Exception ex)
{
Console.WriteLine($"Error reading Excel file: {ex.Message}");
}
Imports IronXL
Try
Dim workbook As WorkBook = WorkBook.Load("Employees.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
Console.WriteLine("=== Employee Data Report ===" & vbCrLf)
Dim rowNumber As Integer = 2
Dim totalSalary As Decimal = 0D
Dim employeeCount As Integer = 0
While Not String.IsNullOrEmpty(sheet($"A{rowNumber}").StringValue)
Dim id As Integer = sheet($"A{rowNumber}").IntValue
Dim name As String = sheet($"B{rowNumber}").StringValue
Dim department As String = sheet($"C{rowNumber}").StringValue
Dim salary As Decimal = sheet($"D{rowNumber}").DecimalValue
Console.WriteLine($"{id,4} {name,-20} {department,-15} {salary,10:C}")
totalSalary += salary
employeeCount += 1
rowNumber += 1
End While
Console.WriteLine(vbCrLf & $"Total Employees: {employeeCount}")
Console.WriteLine($"Total Payroll: {totalSalary:C}")
' Write a new record back to the sheet and save
sheet("A10").Value = 1010
sheet("B10").Value = "Jane Doe"
sheet("C10").Value = "Finance"
sheet("D10").Value = 75000
workbook.SaveAs("Employees-Updated.xlsx")
Catch ex As Exception
Console.WriteLine($"Error reading Excel file: {ex.Message}")
End Try
while döngüsü, A sütunu boşaldığında sonlanır ve okuyucuyu herhangi bir uzunluktaki elektronik tablolara uyarlayarak sabit kodlanmış satır sayısı gerektirmez hale getirir. Değerleri geri yazma işlemi, okuma ile aynı hücre adresi söz dizimini takip eder ve SaveAs değişiklikleri yeni bir dosyaya kaydederek orijinal dosyanın dokunulmamış kalmasını sağlar. try/catch bloğu, eksik dosyaları, kilitli çalışma kitaplarını ve bozuk verileri -- girdilerin harici kaynaklardan geldiği üretim ortamlarında ortaya çıkan tüm senaryoları -- yönetir.
Çıktı

Elektronik tablo oluşturma kılavuzu ve XLSX'i CSV'ye nasıl dönüştürürsünüz rehberi okuma ve yazmayı uçtan uca iş akışlarında birleştirmenin yolunu gösterir. Hücre stil rehberi yazı tipi boyutları, renkleri ve kenarlıklarını, biçimlendirilmiş çıktı gerektiğinde kapsar.

Gelişmiş Okuma Senaryoları Nasıl İşlenir?
Gerçek projelerde bazı daha az yaygın ama önemli senaryolar ortaya çıkar. Adlandırılmış aralıklar, çalışma sayfası bulma ve CSV yüklemesi her biri özel API desteğine sahiptir.
Adlandırılmış aralıklar bir hücre adresinden ziyade mantıksal bir etikete göre veri referansı yapmanıza izin verir. Eğer çalışma kitabı yazarı SalaryTable adlı bir adlandırılmış aralığı tanımladıysa, GetRangeByName ile doğrudan erişebilirsiniz.
var range = workbook.GetRangeByName("SalaryTable");
decimal total = range.Sum();
Console.WriteLine($"Named range total: {total:C}");
var range = workbook.GetRangeByName("SalaryTable");
decimal total = range.Sum();
Console.WriteLine($"Named range total: {total:C}");
Dim range = workbook.GetRangeByName("SalaryTable")
Dim total As Decimal = range.Sum()
Console.WriteLine($"Named range total: {total:C}")
Çalışma sayfası bulma çalışma kitabındaki her sayfayı numaralar, bu, değişken sayıda sekmesine sahip dosyaları işlerken faydalıdır:
foreach (WorkSheet ws in workbook.WorkSheets)
Console.WriteLine($"Sheet: {ws.Name}, Rows: {ws.RowCount}");
foreach (WorkSheet ws in workbook.WorkSheets)
Console.WriteLine($"Sheet: {ws.Name}, Rows: {ws.RowCount}");
For Each ws As WorkSheet In workbook.WorkSheets
Console.WriteLine($"Sheet: {ws.Name}, Rows: {ws.RowCount}")
Next
CSV yükleme, düz metin dosyaları için optimize edilmiş özel bir metod kullanır ve aynı aralık API'si ile gezinebileceğiniz bir WorkSheet döndürür.
WorkBook csv = WorkBook.LoadCSV("data.csv");
WorkSheet first = csv.DefaultWorkSheet;
Console.WriteLine(first["A1"].StringValue);
WorkBook csv = WorkBook.LoadCSV("data.csv");
WorkSheet first = csv.DefaultWorkSheet;
Console.WriteLine(first["A1"].StringValue);
Dim csv As WorkBook = WorkBook.LoadCSV("data.csv")
Dim first As WorkSheet = csv.DefaultWorkSheet
Console.WriteLine(first("A1").StringValue)
Bu desenler, veri geçiş projelerinde, ETL boru hatlarında ve otomatik raporlama sistemlerinde ortaya çıkan gelişmiş okuma senaryolarını kapsar. Tam API yüzeyi için, IronXL nesne referansına bakın.
Ek yetkili referanslar:
- IronXL belgeleri ana sayfa
- Excel formüllerini nasıl düzenleyeceğiniz
- Matematik fonksiyonlarıyla nasıl çalışılacağı
- Aralıkları nasıl seçeceğiniz
- ECMA-376 Open XML spesifikasyonu -- XLSX formatını tanımlayan yetkili standart
- Microsoft Open XML SDK belgeleri -- temel dosya yapısı için referans material
- NuGet Galeri -- IronXL.Excel -- paket sayfası, sürüm geçmişi ve indirme istatistikleri
Sonraki Adımlarınız Neler?
IronXL, Excel dosyası okumasını, bağımlılıkla dolu bir Interop zorluğundan, birkaç satırlık basit C# koduna dönüştürür. Çalışma kitaplarını yüklemek, yazı türü değerleri çıkarmak, satır satır yinelemek, toplama hesaplamaları çalıştırmak ve uç durumları yönetmek, tamamı Microsoft Office kurulumu olmadan dağıtım ortamınızda aynı tutarlı API modelini izler.
Eğitimden üretime geçmek için:
- Ücretsiz bir deneme başlatın IronXL'nin tam özellik setini açıp bir lisansa taahhüt etmeden önce kendi Excel dosyalarınıza karşı kullanarak onu teste tabi tutun.
- Yazma, biçimlendirme, stil verme ve elektronik tablolara dönüştürme rehberleri için tam IronXL belgelerine göz atın.
- Kütüphanede mevcut her sınıf, yöntem ve özelliği keşfetmek için nesne referansını ve tam API'yi inceleyin.
- İş akışınızın giriş dosyalarını okuma ve çıktı dosyalarını olusturmayı gerektirdiğinde Elektronik tablo oluşturma kılavuzunu inceleyin.
- Rapor oluşturma, veri doğrulama ve çok sayfalı konsolidasyon gibi gerçek dünya senaryolarını kapsayan ek öğreticiler için IronXL blog gönderisi dizinine bakın.
Sıkça Sorulan Sorular
IronXL nedir?
IronXL, geliştiricilerin Microsoft Office kurulumuna ihtiyaç duymadan XLSX ve XLS gibi çeşitli formatlarda Excel dosyalarını okumalarına, düzenlemelerine ve oluşturmalarına olanak tanıyan bir .NET kütüphanesidir.
C# ile IronXL kullanarak Excel dosyalarını nasıl okursunuz?
Çalışma kitabını açmak için dosya yolu ile birlikte WorkBook.Load çağırın, ardından hücrelere A1 notasyonu ve StringValue, IntValue ve DecimalValue gibi typed özelliklerle erişin.
Excel dosyalarını okumak için Microsoft Office Interop yerine neden IronXL'i tercih etmeli?
IronXL, hiçbir Microsoft Office kurulumu gerektirmez, COM bağımlılıklarını ortadan kaldırır ve sunucu tarafı dağıtımı basitleştirir.
IronXL hangi Excel dosya formatlarını okuyabilir?
IronXL, XLSX, XLS, XLSM, CSV ve TSV formatlarını okur. Format algılama, dosya uzantısına göre otomatik olarak gerçekleşir.
IronXL büyük Excel dosyalarını verimli bir şekilde işleyebilir mi?
Evet, IronXL performans için optimize edilmiştir ve büyük Excel dosyalarını işleyebilir, bu da onu veri yoğun uygulamalar için uygun hale getirir.
IronXL, .NET 10 ile çalışır mı?
Evet, IronXL, incl.uding .NET 10, modern .NET sürümlerini ve .NET Framework projelerini destekler.
IronXL ile özet hesaplamalar nasıl yapılır?
Herhangi bir hücre aralığında yerleşik Toplam, Minimum, Maksimum ve Ortalama yöntemlerini kullanın. Bu yöntemler, boş hücreleri otomatik olarak atlar.
IronXL, şifre korumalı Excel dosyalarını okuyabilir mi?
Evet, şifreyi WorkBook.Load'un ikinci argümanı olarak geçirerek okuyabilirsiniz: WorkBook.Load("file.xlsx", "şifre").




