C# Kullanarak .NET MAUI'de Excel Dosyalarını Okuma ve Oluşturma | IronXL

.NET MAUI'de Excel Dosyaları Oluşturma, Okuma ve Düzenleme

This article was translated from English: Does it need improvement?
Translated
View the article in English

Giriş

Bu Nasıl Yapılır Kılavuzu, Windows için .NET MAUI uygulamalarında IronXL kullanarak Excel dosyalarının nasıl oluşturulacağını ve okunacağını açıklar. Başlayalım.

IronXL: C# Excel Kütüphanesi

IronXL, Excel dosyalarını okuma, yazma ve manipüle etme için bir C# .NET kütüphanesidir. Kullanıcıların Excel belgelerini sıfırdan oluşturmasına, Excel'in içeriği ve görünümünü yanı sıra başlık ve yazar gibi meta verileri kapsamasına olanak tanır. Kütüphane ayrıca kullanıcı arayüzü için kenar boşluğu ayarları, yönlendirme, sayfa boyutu, resimler vb. gibi özelleştirme özelliklerini destekler. Excel dosyaları oluşturmak için herhangi bir harici çerçeve, platform entegrasyonu veya diğer üçüncü taraf kütüphanelerine ihtiyaç duymaz. Bağımsız ve kendi başına çalışır.

IronXL'yi Yükleyin


IronXL'u yüklemek için Visual Studio'da NuGet Paket Yöneticisi Konsolunu kullanabilirsiniz. Konsolu açın ve IronXL kütüphanesini yüklemek için aşağıdaki komutu girin.

Install-Package IronXl.Excel

C# ile IronXL Kullanarak Excel Dosyaları Oluşturma

Uygulama Kullanıcı Arayüzünü Tasarlayın

XAML sayfasını MainPage.xaml adında açın ve içindeki kodu aşağıdaki kod parçası ile değiştirin.

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_IronXl.MainPage">

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Label
                Text="Welcome to .NET Multi-platform App UI"
                SemanticProperties.HeadingLevel="Level2"
                SemanticProperties.Description="Welcome Multi-platform App UI"
                FontSize="18"
                HorizontalOptions="Center" />

            <Button
                x:Name="createBtn"
                Text="Create Excel File"
                SemanticProperties.Hint="Click on the button to create Excel file"
                Clicked="CreateExcel"
                HorizontalOptions="Center" />

            <Button
                x:Name="readExcel"
                Text="Read and Modify Excel file"
                SemanticProperties.Hint="Click on the button to read Excel file"
                Clicked="ReadExcel"
                HorizontalOptions="Center" />

        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_IronXl.MainPage">

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Label
                Text="Welcome to .NET Multi-platform App UI"
                SemanticProperties.HeadingLevel="Level2"
                SemanticProperties.Description="Welcome Multi-platform App UI"
                FontSize="18"
                HorizontalOptions="Center" />

            <Button
                x:Name="createBtn"
                Text="Create Excel File"
                SemanticProperties.Hint="Click on the button to create Excel file"
                Clicked="CreateExcel"
                HorizontalOptions="Center" />

            <Button
                x:Name="readExcel"
                Text="Read and Modify Excel file"
                SemanticProperties.Hint="Click on the button to read Excel file"
                Clicked="ReadExcel"
                HorizontalOptions="Center" />

        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
XML

Yukarıdaki kod, temel .NET MAUI uygulamamızın düzenini oluşturur. Bir etiket ve iki düğme oluşturur. Bir düğme, Excel dosyası oluşturmaya yöneliktir, ikinci düğme ise Excel dosyasını okumak ve değiştirmek için destek sağlar. Her iki eleman da bir VerticalStackLayout üst elemanı içinde yerleştirilerek desteklenen tüm cihazlarda dikey hizalanır.

Excel Dosyaları Oluşturun

Excel dosyasını IronXL kullanarak oluşturma zamanı. MainPage.xaml.cs dosyasını açın ve dosyaya aşağıdaki yöntemi yazın.

private void CreateExcel(object sender, EventArgs e)
{
    // Create a new Workbook
    WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

    // Create a Worksheet
    var sheet = workbook.CreateWorkSheet("2022 Budget");

    // Set cell headers
    sheet["A1"].Value = "January";
    sheet["B1"].Value = "February";
    sheet["C1"].Value = "March";
    sheet["D1"].Value = "April";
    sheet["E1"].Value = "May";
    sheet["F1"].Value = "June";
    sheet["G1"].Value = "July";
    sheet["H1"].Value = "August";

    // Fill worksheet cells with random values
    Random r = new Random();
    for (int i = 2; i <= 11; i++)
    {
        sheet["A" + i].Value = r.Next(1, 1000);
        sheet["B" + i].Value = r.Next(1000, 2000);
        sheet["C" + i].Value = r.Next(2000, 3000);
        sheet["D" + i].Value = r.Next(3000, 4000);
        sheet["E" + i].Value = r.Next(4000, 5000);
        sheet["F" + i].Value = r.Next(5000, 6000);
        sheet["G" + i].Value = r.Next(6000, 7000);
        sheet["H" + i].Value = r.Next(7000, 8000);
    }

    // Apply formatting (background and border)
    sheet["A1:H1"].Style.SetBackgroundColor("#d3d3d3");
    sheet["A1:H1"].Style.TopBorder.SetColor("#000000");
    sheet["A1:H1"].Style.BottomBorder.SetColor("#000000");
    sheet["H2:H11"].Style.RightBorder.SetColor("#000000");
    sheet["H2:H11"].Style.RightBorder.Type = IronXl.Styles.BorderType.Medium;
    sheet["A11:H11"].Style.BottomBorder.SetColor("#000000");
    sheet["A11:H11"].Style.BottomBorder.Type = IronXl.Styles.BorderType.Medium;

    // Apply formulas
    decimal sum = sheet["A2:A11"].Sum();
    decimal avg = sheet["B2:B11"].Avg();
    decimal max = sheet["C2:C11"].Max();
    decimal min = sheet["D2:D11"].Min();

    sheet["A12"].Value = "Sum";
    sheet["B12"].Value = sum;

    sheet["C12"].Value = "Avg";
    sheet["D12"].Value = avg;

    sheet["E12"].Value = "Max";
    sheet["F12"].Value = max;

    sheet["G12"].Value = "Min";
    sheet["H12"].Value = min;

    // Save and open the Excel file
    SaveService saveService = new SaveService();
    saveService.SaveAndView("Budget.xlsx", "application/octet-stream", workbook.ToStream());
}
private void CreateExcel(object sender, EventArgs e)
{
    // Create a new Workbook
    WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

    // Create a Worksheet
    var sheet = workbook.CreateWorkSheet("2022 Budget");

    // Set cell headers
    sheet["A1"].Value = "January";
    sheet["B1"].Value = "February";
    sheet["C1"].Value = "March";
    sheet["D1"].Value = "April";
    sheet["E1"].Value = "May";
    sheet["F1"].Value = "June";
    sheet["G1"].Value = "July";
    sheet["H1"].Value = "August";

    // Fill worksheet cells with random values
    Random r = new Random();
    for (int i = 2; i <= 11; i++)
    {
        sheet["A" + i].Value = r.Next(1, 1000);
        sheet["B" + i].Value = r.Next(1000, 2000);
        sheet["C" + i].Value = r.Next(2000, 3000);
        sheet["D" + i].Value = r.Next(3000, 4000);
        sheet["E" + i].Value = r.Next(4000, 5000);
        sheet["F" + i].Value = r.Next(5000, 6000);
        sheet["G" + i].Value = r.Next(6000, 7000);
        sheet["H" + i].Value = r.Next(7000, 8000);
    }

    // Apply formatting (background and border)
    sheet["A1:H1"].Style.SetBackgroundColor("#d3d3d3");
    sheet["A1:H1"].Style.TopBorder.SetColor("#000000");
    sheet["A1:H1"].Style.BottomBorder.SetColor("#000000");
    sheet["H2:H11"].Style.RightBorder.SetColor("#000000");
    sheet["H2:H11"].Style.RightBorder.Type = IronXl.Styles.BorderType.Medium;
    sheet["A11:H11"].Style.BottomBorder.SetColor("#000000");
    sheet["A11:H11"].Style.BottomBorder.Type = IronXl.Styles.BorderType.Medium;

    // Apply formulas
    decimal sum = sheet["A2:A11"].Sum();
    decimal avg = sheet["B2:B11"].Avg();
    decimal max = sheet["C2:C11"].Max();
    decimal min = sheet["D2:D11"].Min();

    sheet["A12"].Value = "Sum";
    sheet["B12"].Value = sum;

    sheet["C12"].Value = "Avg";
    sheet["D12"].Value = avg;

    sheet["E12"].Value = "Max";
    sheet["F12"].Value = max;

    sheet["G12"].Value = "Min";
    sheet["H12"].Value = min;

    // Save and open the Excel file
    SaveService saveService = new SaveService();
    saveService.SaveAndView("Budget.xlsx", "application/octet-stream", workbook.ToStream());
}
Private Sub CreateExcel(sender As Object, e As EventArgs)
    ' Create a new Workbook
    Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)

    ' Create a Worksheet
    Dim sheet = workbook.CreateWorkSheet("2022 Budget")

    ' Set cell headers
    sheet("A1").Value = "January"
    sheet("B1").Value = "February"
    sheet("C1").Value = "March"
    sheet("D1").Value = "April"
    sheet("E1").Value = "May"
    sheet("F1").Value = "June"
    sheet("G1").Value = "July"
    sheet("H1").Value = "August"

    ' Fill worksheet cells with random values
    Dim r As New Random()
    For i As Integer = 2 To 11
        sheet("A" & i).Value = r.Next(1, 1000)
        sheet("B" & i).Value = r.Next(1000, 2000)
        sheet("C" & i).Value = r.Next(2000, 3000)
        sheet("D" & i).Value = r.Next(3000, 4000)
        sheet("E" & i).Value = r.Next(4000, 5000)
        sheet("F" & i).Value = r.Next(5000, 6000)
        sheet("G" & i).Value = r.Next(6000, 7000)
        sheet("H" & i).Value = r.Next(7000, 8000)
    Next

    ' Apply formatting (background and border)
    sheet("A1:H1").Style.SetBackgroundColor("#d3d3d3")
    sheet("A1:H1").Style.TopBorder.SetColor("#000000")
    sheet("A1:H1").Style.BottomBorder.SetColor("#000000")
    sheet("H2:H11").Style.RightBorder.SetColor("#000000")
    sheet("H2:H11").Style.RightBorder.Type = IronXl.Styles.BorderType.Medium
    sheet("A11:H11").Style.BottomBorder.SetColor("#000000")
    sheet("A11:H11").Style.BottomBorder.Type = IronXl.Styles.BorderType.Medium

    ' Apply formulas
    Dim sum As Decimal = sheet("A2:A11").Sum()
    Dim avg As Decimal = sheet("B2:B11").Avg()
    Dim max As Decimal = sheet("C2:C11").Max()
    Dim min As Decimal = sheet("D2:D11").Min()

    sheet("A12").Value = "Sum"
    sheet("B12").Value = sum

    sheet("C12").Value = "Avg"
    sheet("D12").Value = avg

    sheet("E12").Value = "Max"
    sheet("F12").Value = max

    sheet("G12").Value = "Min"
    sheet("H12").Value = min

    ' Save and open the Excel file
    Dim saveService As New SaveService()
    saveService.SaveAndView("Budget.xlsx", "application/octet-stream", workbook.ToStream())
End Sub
$vbLabelText   $csharpLabel

Bu kaynak kodu, IronXL kullanarak bir çalışma kitabı ve çalışma sayfası oluşturur, hücre değerlerini ayarlar ve hücreleri biçimlendirir. Ayrıca IronXL ile Excel formüllerinin nasıl kullanılacağını da gösterir.

Tarayıcıda Excel Dosyalarını Görüntüleyin

MainPage.xaml.cs dosyasını açın ve aşağıdaki kodu yazın.

private void ReadExcel(object sender, EventArgs e)
{
    // Store the path of the file
    string filepath = @"C:\Files\Customer Data.xlsx";
    WorkBook workbook = WorkBook.Load(filepath);
    WorkSheet sheet = workbook.WorkSheets.First();

    // Calculate the sum of a range
    decimal sum = sheet["B2:B10"].Sum();

    // Modify a cell value and apply styles
    sheet["B11"].Value = sum;
    sheet["B11"].Style.SetBackgroundColor("#808080");
    sheet["B11"].Style.Font.SetColor("#ffffff");

    // Save and open the Excel file
    SaveService saveService = new SaveService();
    saveService.SaveAndView("Modified Data.xlsx", "application/octet-stream", workbook.ToStream());

    DisplayAlert("Notification", "Excel file has been modified!", "OK");
}
private void ReadExcel(object sender, EventArgs e)
{
    // Store the path of the file
    string filepath = @"C:\Files\Customer Data.xlsx";
    WorkBook workbook = WorkBook.Load(filepath);
    WorkSheet sheet = workbook.WorkSheets.First();

    // Calculate the sum of a range
    decimal sum = sheet["B2:B10"].Sum();

    // Modify a cell value and apply styles
    sheet["B11"].Value = sum;
    sheet["B11"].Style.SetBackgroundColor("#808080");
    sheet["B11"].Style.Font.SetColor("#ffffff");

    // Save and open the Excel file
    SaveService saveService = new SaveService();
    saveService.SaveAndView("Modified Data.xlsx", "application/octet-stream", workbook.ToStream());

    DisplayAlert("Notification", "Excel file has been modified!", "OK");
}
Private Sub ReadExcel(ByVal sender As Object, ByVal e As EventArgs)
	' Store the path of the file
	Dim filepath As String = "C:\Files\Customer Data.xlsx"
	Dim workbook As WorkBook = WorkBook.Load(filepath)
	Dim sheet As WorkSheet = workbook.WorkSheets.First()

	' Calculate the sum of a range
	Dim sum As Decimal = sheet("B2:B10").Sum()

	' Modify a cell value and apply styles
	sheet("B11").Value = sum
	sheet("B11").Style.SetBackgroundColor("#808080")
	sheet("B11").Style.Font.SetColor("#ffffff")

	' Save and open the Excel file
	Dim saveService As New SaveService()
	saveService.SaveAndView("Modified Data.xlsx", "application/octet-stream", workbook.ToStream())

	DisplayAlert("Notification", "Excel file has been modified!", "OK")
End Sub
$vbLabelText   $csharpLabel

Kaynak kodu, Excel dosyasını yükleyip, hücre aralığına bir formül uygulayarak özel arka plan ve metin renklendirmesi ile biçimlendirir. Sonrasında, değiştirilen Excel dosyası kaydedilir ve bir bildirim görüntülenir.

Excel Dosyalarını Kaydedin

Bu bölümde, Excel dosyalarımızı yerel depolamada kaydedecek olan SaveService sınıfını tanımlıyoruz.

"SaveService.cs" sınıfını oluşturun ve aşağıdaki kodu yazın:

using System;
using System.IO;

namespace MAUI_IronXL
{
    public partial class SaveService
    {
        public partial void SaveAndView(string fileName, string contentType, MemoryStream stream);
    }
}
using System;
using System.IO;

namespace MAUI_IronXL
{
    public partial class SaveService
    {
        public partial void SaveAndView(string fileName, string contentType, MemoryStream stream);
    }
}
Imports System
Imports System.IO

Namespace MAUI_IronXL
	Partial Public Class SaveService
		Public Partial Private Sub SaveAndView(ByVal fileName As String, ByVal contentType As String, ByVal stream As MemoryStream)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Sonra, Windows klasörü altındaki Platforms > Windows klasörüne "SaveWindows.cs" adlı bir sınıf oluşturun ve aşağıdaki kodu ekleyin:

using System;
using System.Collections.Generic;
using System.IO;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Popups;

namespace MAUI_IronXL
{
    public partial class SaveService
    {
        public async partial void SaveAndView(string fileName, string contentType, MemoryStream stream)
        {
            StorageFile stFile;
            string extension = Path.GetExtension(fileName);
            IntPtr windowHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;

            if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
            {
                FileSavePicker savePicker = new FileSavePicker();
                savePicker.DefaultFileExtension = ".xlsx";
                savePicker.SuggestedFileName = fileName;
                savePicker.FileTypeChoices.Add("XLSX", new List<string> { ".xlsx" });

                WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle);
                stFile = await savePicker.PickSaveFileAsync();
            }
            else
            {
                StorageFolder local = ApplicationData.Current.LocalFolder;
                stFile = await local.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
            }

            if (stFile != null)
            {
                using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
                {
                    using (Stream outputStream = zipStream.AsStreamForWrite())
                    {
                        outputStream.SetLength(0);
                        stream.WriteTo(outputStream);
                        await outputStream.FlushAsync();
                    }
                }

                MessageDialog msgDialog = new("Do you want to view the document?", "File has been created successfully");
                UICommand yesCmd = new("Yes");
                msgDialog.Commands.Add(yesCmd);
                UICommand noCmd = new("No");
                msgDialog.Commands.Add(noCmd);

                WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle);

                IUICommand cmd = await msgDialog.ShowAsync();
                if (cmd.Label == yesCmd.Label)
                {
                    await Windows.System.Launcher.LaunchFileAsync(stFile);
                }
            }
        }
    }
}
using System;
using System.Collections.Generic;
using System.IO;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Popups;

namespace MAUI_IronXL
{
    public partial class SaveService
    {
        public async partial void SaveAndView(string fileName, string contentType, MemoryStream stream)
        {
            StorageFile stFile;
            string extension = Path.GetExtension(fileName);
            IntPtr windowHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;

            if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
            {
                FileSavePicker savePicker = new FileSavePicker();
                savePicker.DefaultFileExtension = ".xlsx";
                savePicker.SuggestedFileName = fileName;
                savePicker.FileTypeChoices.Add("XLSX", new List<string> { ".xlsx" });

                WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle);
                stFile = await savePicker.PickSaveFileAsync();
            }
            else
            {
                StorageFolder local = ApplicationData.Current.LocalFolder;
                stFile = await local.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
            }

            if (stFile != null)
            {
                using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
                {
                    using (Stream outputStream = zipStream.AsStreamForWrite())
                    {
                        outputStream.SetLength(0);
                        stream.WriteTo(outputStream);
                        await outputStream.FlushAsync();
                    }
                }

                MessageDialog msgDialog = new("Do you want to view the document?", "File has been created successfully");
                UICommand yesCmd = new("Yes");
                msgDialog.Commands.Add(yesCmd);
                UICommand noCmd = new("No");
                msgDialog.Commands.Add(noCmd);

                WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle);

                IUICommand cmd = await msgDialog.ShowAsync();
                if (cmd.Label == yesCmd.Label)
                {
                    await Windows.System.Launcher.LaunchFileAsync(stFile);
                }
            }
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.IO
Imports System.Runtime.InteropServices.WindowsRuntime
Imports Windows.Storage
Imports Windows.Storage.Pickers
Imports Windows.Storage.Streams
Imports Windows.UI.Popups

Namespace MAUI_IronXL
	Partial Public Class SaveService
		Public Async Sub SaveAndView(ByVal fileName As String, ByVal contentType As String, ByVal stream As MemoryStream)
			Dim stFile As StorageFile
			Dim extension As String = Path.GetExtension(fileName)
			Dim windowHandle As IntPtr = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle

			If Not Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons") Then
				Dim savePicker As New FileSavePicker()
				savePicker.DefaultFileExtension = ".xlsx"
				savePicker.SuggestedFileName = fileName
				savePicker.FileTypeChoices.Add("XLSX", New List(Of String) From {".xlsx"})

				WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle)
				stFile = Await savePicker.PickSaveFileAsync()
			Else
				Dim local As StorageFolder = ApplicationData.Current.LocalFolder
				stFile = Await local.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting)
			End If

			If stFile IsNot Nothing Then
				Using zipStream As IRandomAccessStream = Await stFile.OpenAsync(FileAccessMode.ReadWrite)
					Using outputStream As Stream = zipStream.AsStreamForWrite()
						outputStream.SetLength(0)
						stream.WriteTo(outputStream)
						Await outputStream.FlushAsync()
					End Using
				End Using

				Dim msgDialog As New MessageDialog("Do you want to view the document?", "File has been created successfully")
				Dim yesCmd As New UICommand("Yes")
				msgDialog.Commands.Add(yesCmd)
				Dim noCmd As New UICommand("No")
				msgDialog.Commands.Add(noCmd)

				WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle)

				Dim cmd As IUICommand = Await msgDialog.ShowAsync()
				If cmd.Label = yesCmd.Label Then
					Await Windows.System.Launcher.LaunchFileAsync(stFile)
				End If
			End If
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Çıktı

MAUI projesini derleyin ve çalıştırın. Başarılı bir yürütmenin ardından, aşağıdaki resimde gösterilen içeriği gösteren bir pencere açılacaktır.

Read, Create, and Edit Excel Files in .NET MAUI, Figure 1: Output

Şekil 1 - Çıktı

"Excel Dosyası Oluştur" düğmesine tıklamak ayrı bir diyalog penceresi açacaktır. Bu pencere, kullanıcıları yeni (oluşturulan) Excel dosyasını kaydetmek için bir konum ve dosya adı seçmeye yönlendirir. Belirtilen şekilde konum ve dosya adını belirleyin ve Tamam'a tıklayın. Sonrasında, başka bir diyalog penceresi belirecektir.

Read, Create, and Edit Excel Files in .NET MAUI, Figure 2: Create Excel Popup

Şekil 2 - Excel Oluşturma Penceresi

Açılır pencerede belirtilen şekilde Excel dosyasını açmak, belgenin aşağıdaki ekran görüntüsünde gösterildiği gibi görüntülenmesine neden olacaktır.

Read, Create, and Edit Excel Files in .NET MAUI, Figure 3: Output

Şekil 3 - Excel Okuma ve Değiştirme Penceresi

"Excel Dosyasını Oku ve Değiştir" düğmesine tıklamak, daha önce oluşturulan Excel dosyasını yükleyecek ve önceki bir bölümde tanımladığımız özel arka plan ve metin renkleriyle değiştirecektir.

Read, Create, and Edit Excel Files in .NET MAUI, Figure 4: Excel Output

Şekil 4 - Excel Çıkışı

Değiştirilen dosyayı açtığınızda, içerik tablosu ile birlikte aşağıdaki çıktıyı göreceksiniz.

Read, Create, and Edit Excel Files in .NET MAUI, Figure 5: Modified Excel Output

Şekil 5 - Değiştirilmiş Excel Çıkışı

Sonuç

.NET MAUI uygulamasında IronXL kütüphanesini kullanarak Excel dosyalarını nasıl oluşturabileceğimizi, okuyabileceğimizi ve değiştirebileceğimizi açıkladık. IronXL çok iyi performans gösterir ve tüm işlemleri hız ve doğrulukla gerçekleştirir. Excel işlemleri için mükemmel bir kütüphanedir, çünkü makinede Microsoft Office Suite kurulumu gerektirmez ve Microsoft Interop'u aşarak üstün performans gösterir. Ek olarak, IronXL, çalışma kitapları ve çalışma sayfaları oluşturma, hücre aralıkları ile çalışma, biçimlendirme ve CSV, TSV gibi çeşitli belge türlerine dışa aktarma gibi birden fazla işlemi destekler.

IronXL, Windows Form, WPF, ASP.NET Core ve daha birçok proje şablonlarını destekler. IronXL'nin nasıl kullanılacağı hakkında ek bilgi için Excel dosyalarının nasıl oluşturulacağına ve Excel dosyalarının nasıl okunacağına yönelik öğreticilerimize başvurun.


Hızlı Erişim Bağlantıları

Bu Nasıl Yapılır Kılavuzunu GitHub'da keşfedin

Bu projenin kaynak kodu GitHub'da mevcuttur.

Bu kodu kullanarak birkaç dakika içinde çalıştırmanın kolay bir yolunu sağlayın. Proje, Microsoft Visual Studio 2022 projesi olarak kaydedilmiştir, ancak herhangi bir .NET IDE ile uyumludur.

.NET MAUI Uygulamalarında Excel Dosyalarını Okuma, Oluşturma ve Düzenleme
Github Icon related to Hızlı Erişim Bağlantıları
Documentation related to Hızlı Erişim Bağlantıları

API Referansını Görüntüleyin

IronXL için API Referansını inceleyin ve IronXL'in tüm özelliklerini, ad alanlarını, sınıflarını, metotlarını, alanlarını ve numaralandırmalarını belirtin.

API Referansını Görüntüleyin

Sıkça Sorulan Sorular

.NET MAUI uygulamasında Excel dosyası nasıl oluşturulur?

.NET MAUI projesinde Excel dosyası oluşturmak için IronXL kütüphanesini kullanarak yeni bir çalışma kitabı ve çalışma sayfası başlatın. Daha sonra hücre değerlerini ayarlayabilir, Excel formülleri uygulayabilir ve dosyayı özel bir SaveService sınıfıyla kaydetmeden önce formatlayabilirsiniz.

.NET MAUI uygulamasında mevcut Excel dosyalarını okuyabilir miyim?

Evet, .NET MAUI uygulamasında mevcut Excel dosyalarını yüklemek ve okumak için IronXL kullanabilirsiniz. Kütüphane, hücre değerlerine erişmenize ve bunları değiştirmenize, formüller uygulamanıza ve özel formatlamalar yapmanıza izin verir.

.NET MAUI'de Excel dosyası manipülasyonu için IronXL kullanmanın avantajları nelerdir?

IronXL, Microsoft Office veya Interop'a ihtiyaç duymadan .NET MAUI'de Excel dosyası manipülasyonu için kendi içinde bir çözüm sunar. Excel dosyalarını etkili bir şekilde oluşturmayı, okumayı ve düzenlemeyi destekler ve CSV ve TSV gibi çeşitli formatlara dışa aktarabilir.

.NET MAUI projesine IronXL'i nasıl yükleyebilirim?

IronXL'i .NET MAUI projenize yüklemek için Visual Studio'daki NuGet Paket Yöneticisi Konsolunu kullanabilirsiniz. Kütüphaneyi projenize eklemek için şu komutu çalıştırın: Install-Package IronXl.Excel.

.NET MAUI'de Excel hücrelerini programlı bir şekilde formatlamak mümkün mü?

Evet, IronXL ile .NET MAUI'de Excel hücrelerini programlı bir şekilde formatlayabilirsiniz. Bu, hücre stillerini ayarlama, renkler uygulama ve Excel dosyalarınızın görünümünü geliştirmek için çeşitli formatlama seçenekleri uygulamayı içerir.

.NET MAUI uygulamamda Excel dosyaları için SaveService sınıfını nasıl uygulayabilirim?

.NET MAUI'de SaveService sınıfını uygulamak için, Excel dosyalarını yerel depolama alanına kaydetmeyi yönetmek için IronXL'in işlevselliğini kullanan bir sınıf oluşturabilirsiniz. Bu, dosya yollarını belirtmek ve dosya I/O işlemlerini yönetmek için yöntemler tanımlamayı içerir.

IronXL, .NET uygulamalarında hangi proje şablonlarını destekler?

IronXL, farklı uygulama türlerinde çalışan geliştiricilere esneklik sağlayan Windows Forms, WPF, ASP.NET Core ve daha fazlası dahil olmak üzere çeşitli .NET proje şablonlarını destekler.

.NET MAUI Excel projesinin kaynak kodunu nerede bulabilirim?

IronXL kullanarak .NET MAUI Excel projesinin kaynak kodu GitHub'da mevcuttur. Bu, geliştiricilerin Visual Studio 2022 kullanarak Excel dosyası manipülasyonu konusunda hızlı bir şekilde kurulum yapmalarını ve deney yapmalarını sağlar.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku
Başlamaya Hazır mısınız?
Nuget İndirmeler 1,974,422 | Sürüm: 2026.4 just released
Still Scrolling Icon

Hala Kaydiriyor musunuz?

Hızlı bir kanit mi istiyorsunuz? PM > Install-Package IronXl.Excel
bir örnek çalıştırın verilerinizin bir elektronik tabloya dönüştüğünü izleyin.