Altbilgi içeriğine atla
IRONZIP KULLANıMı

.NET Core'da Dosyalar Nasıl Çıkartılır

1. Tanıtım

"Unzip", ZIP arşivinden dosya ve klasörleri çıkarma ve sıkıştırmayı açma sürecini tanımlar. "Unzip" refers to the process of recovering compressed files or directories back to their original condition, so that they can be accessed and used again after being compressed into a ZIP file. Görüntüler, TXT dosyaları gibi çeşitli türde dosyaları ZIP dosyalarına ekleyebiliriz.

Kullanıcılar, sıkıştırma işlemini tersine çevirme süreci olan sıkıştırmayı açarak bir ZIP arşivinin içeriğini geri alabilirler. Daha etkili bir iletim, depolama veya paylaşım için bir araya toplanmış olan bireysel dosya veya klasörlere erişmek popüler bir kullanımdır. "Unzip" prosedürü tamamlandıktan sonra, dosyalar orijinal yapısına sahip olur ve kullanıcı tarafından gerektiği şekilde okunabilir, değiştirilebilir veya kullanılabilir. Bu makalede, IronZIP Archive Library kullanarak Asp.net core'da dosyaları sıkıştırmayı açacağız.

2. Asp.net Core'da Dosya Sıkıştırma Özeti

  1. Yeni bir Asp.net Core projesi oluşturun.
  2. Oluşturulan projeye IronZIP kütüphanesini yükleyin.
  3. Bir dosyayı sıkıştırmayı açmak için IronArchive sınıfını başlatın.
  4. ZIP dosyası ExtractArchiveToDirectory fonksiyonu kullanılarak çıkarılabilir.
  5. Sıkıştırmayı açtığınız dosyanın çıkarılması gereken hedef dosyayı belirleyin.

3. IronZIP Library

Iron Software, .NET uygulamalarında ZIP dosyalarını daha kolay ele almayı ve yönetmeyi sağlayan IronZIP adlı .NET kütüphanesini oluşturdu. Programcılara ZIP ile çeşitli şekillerde etkileşim kurmaları için araçlar ve özellikler sunar. Bu özellikler, ZIP dosyaları içinde dosya ve dizinleri oluşturma, çıkarma, sıkıştırma, sıkıştırmayı açma, şifreleme ve değiştirmeyi içerir.

3.1 IronZIP'in Özellikleri

  • ZIP Dosyası Oluşturma: .NET uygulamalarının baştan yeni ZIP arşivleri üretme yeteneği.
  • Çıkarma ve Sıkıştırmayı Açma: Mevcut ZIP paketlerinden dosya ve dizinleri kaldırma ve içeriği sıkıştırmayı açma kapasitesi.
  • Sıkıştırma: Dosya ve klasörleri taşıma veya depolama için daha küçük hale getirmek amacıyla ZIP arşivlerine dönüştürmek için araçlar sunar.
  • Parola koruması ve şifreleme: ZIP arşivlerinin içeriğini korumak için parola koruması uygulama ve ZIP dosyalarını şifreleme yeteneği sunar.
  • Dosya manipülasyonu: Bu, programcılara ZIP paketleri içindeki dosyaları ve dizinleri ekleme, kaldırma, güncelleme veya başka şekilde çalışma imkanı tanır.
  • Uyumluluk: Çeşitli .NET ortamlarında çalışacak şekilde tasarlanmıştır ve çerçevenin çeşitli iterasyonlarıyla uyumludur.
  • Performans Optimizasyonu: .NET programlarının büyük ZIP dosyalarını veya veri setlerini daha etkili bir şekilde yönetebilmesi amacıyla hız optimizasyonuna yönelik olarak hedeflenmiştir.

Geliştiriciler, uygulamaları için ZIP dosyalarını yönetirken IronZIP'i faydalı bir araç olarak görebilir. .NET çerçevesi içinde ZIP arşivleri ile programlı bir şekilde çalışmak için basitlik ve esneklik sunarak çeşitli özellikler sağlar.

Yazılım kütüphaneleri zamanla güncellenip geliştirildiği için, en son özellikler, yetenekler, uyumluluk ve daha sonraki sürümlerde eklenen yeni fonksiyonlar hakkında resmi belgeler, sürüm notları veya IronZIP web sitesine bakın. Daha fazla bilgi için, buraya tıklayın.

3.2 Visual Studio'da Yeni Proje Oluşturmak

Visual Studio programını başlattıktan sonra Dosya seçeneğini seçin. "Yeni proje" ve ardından "Asp.Net core Web App" seçeneğini seçin.

İlgili metin kutusuna proje adını yazın ve dosya konumunu seçin. Ardından, Oluştur düğmesine tıklayın ve gerekli .NET Framework sürümünü seçin.

Seçilen uygulamanın yapısı, Visual Studio projesi tarafından şimdi üretilecektir. Bu durumda, ASP.NET MVC kullanılıyor. Bu nedenle, iki seçeneğimiz var: ya mevcut denetleyiciyi kullanarak kodu ekler ve uygulamayı derleyip çalıştırırız, ya da yeni bir tane oluştururuz.

Kütüphane ardından eklenebilir ve kod test edilebilir.

4. IronZIP Paketi İndir

4.1 Visual Studio'yu Kullanarak

Visual Studio'nun NuGet Paket Yöneticisi özelliğini kullanarak doğrudan çözümünüze paketler yükleyebilirsiniz. NuGet Paket Yöneticisi'ne erişmek için aşağıdaki anlık görüntüyü kullanabilirsiniz.

.NET Core'da Dosya Sıkıştırmayı Açma: Şekil 1 - NuGet Paket Yöneticisine Nasıl Ulaşılır

NuGet web sitesi paket listesini açan bir arama kutusu sağlar. Aşağıdaki ekran görüntüsü, paket yöneticisinde 'IronZIP' ifadesini nerede arayacağımızı gösterir.

.NET Core'da Dosya Sıkıştırmayı Açma: Şekil 2 - NuGet Paket Yöneticisinde IronZIP Arama

Yukarıdaki resimde, ilgili arama terimleri listelenmiştir. Çözüm paketini yüklemek için gerekli seçeneği seçmek gereklidir.

4.2 Visual Studio Komut Satırını Kullanarak

Visual Studio'da, Araçlar > NuGet Paket Yöneticisi'ni seçerek Paket Yöneticisi Konsolu'nu görebilirsiniz.

Paket yöneticisinin terminal sekmesine aşağıdaki satırı koyun:

Install-Package IronZip

Paket indirildikten ve aktif projeye kurulduktan sonra kullanıma hazırdır.

4.3 NuGet web sitesinden doğrudan indirme

Üçüncü yöntemi kullanarak, NuGet paketini doğrudan web sitesinden alabilirsiniz.

Linki açmak için oraya gidin.

Menünün sağından indirme paketi seçeneğini seçin.

Paket indirildikten sonra üzerine çift tıklayın. Kendi başına kuracaktır.

Çözümü yeniden yükleyin ve projede kullanmaya başlayın.

4.4 IronZIP web sitesinden doğrudan indirme

En son paketi web sitesinden doğrudan elde etmek için bu bağlantıya tıklayın. İndirildikten sonra, paketi projeye eklemek için uygulanan prosedürleri izleyin.

  • Çözüm penceresindeki projeye sağ tıklayın.
  • Referansı seçin ve indirildiği konumu gözden geçirin.
  • Referansı eklemek için ardından Tamam'a tıklayın.

4.5 Asp.net core'da Dosyaları Açın

IronZIP'i kullanarak bir ZIP arşivinden belirli bir dosyayı çıkarmak için, dosya adını ve çıkarmak istediğiniz hedef konumu C#'ta sağlamanız gerekecek.

Kod örneği burada:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using IronZip;

namespace IronPDF_WebApp.Pages
{
    public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;

        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }

        public IActionResult OnPost()
        {
            try
            {
                // Retrieve the uploaded file from the form
                var file = Request.Form.Files[0];

                // Set the file path where the file will be saved
                string filepath = @"C:\temp\uploads\";

                // Save the uploaded file to the specified filepath
                using (var stream = new FileStream(filepath + file.FileName, FileMode.Create))
                {
                    file.CopyToAsync(stream);
                }

                // Extract the ZIP archive to the specified directory
                string extractfile = @"C:\temp\extracted";
                IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile);
            }
            catch (Exception ex)
            {
                // Handle exception and redirect to Error page
                _logger.LogError(ex, "An error occurred while extracting the ZIP file.");
                return RedirectToAction("Error");
            }

            return RedirectToAction("Get");
        }
    }
}
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using IronZip;

namespace IronPDF_WebApp.Pages
{
    public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;

        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }

        public IActionResult OnPost()
        {
            try
            {
                // Retrieve the uploaded file from the form
                var file = Request.Form.Files[0];

                // Set the file path where the file will be saved
                string filepath = @"C:\temp\uploads\";

                // Save the uploaded file to the specified filepath
                using (var stream = new FileStream(filepath + file.FileName, FileMode.Create))
                {
                    file.CopyToAsync(stream);
                }

                // Extract the ZIP archive to the specified directory
                string extractfile = @"C:\temp\extracted";
                IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile);
            }
            catch (Exception ex)
            {
                // Handle exception and redirect to Error page
                _logger.LogError(ex, "An error occurred while extracting the ZIP file.");
                return RedirectToAction("Error");
            }

            return RedirectToAction("Get");
        }
    }
}
Imports Microsoft.AspNetCore.Mvc
Imports Microsoft.AspNetCore.Mvc.RazorPages
Imports IronZip

Namespace IronPDF_WebApp.Pages
	Public Class IndexModel
		Inherits PageModel

		Private ReadOnly _logger As ILogger(Of IndexModel)

		Public Sub New(ByVal logger As ILogger(Of IndexModel))
			_logger = logger
		End Sub

		Public Function OnPost() As IActionResult
			Try
				' Retrieve the uploaded file from the form
				Dim file = Request.Form.Files(0)

				' Set the file path where the file will be saved
				Dim filepath As String = "C:\temp\uploads\"

				' Save the uploaded file to the specified filepath
				Using stream = New FileStream(filepath & file.FileName, FileMode.Create)
					file.CopyToAsync(stream)
				End Using

				' Extract the ZIP archive to the specified directory
				Dim extractfile As String = "C:\temp\extracted"
				IronZipArchive.ExtractArchiveToDirectory(filepath & file.FileName, extractfile)
			Catch ex As Exception
				' Handle exception and redirect to Error page
				_logger.LogError(ex, "An error occurred while extracting the ZIP file.")
				Return RedirectToAction("Error")
			End Try

			Return RedirectToAction("Get")
		End Function
	End Class
End Namespace
$vbLabelText   $csharpLabel

Yukarıdaki kodda, IronZIP ad alanının içe aktarıldığından emin olun. IronZIP'in IronZipArchive sınıfında ExtractArchiveToDirectory fonksiyonu bulunmaktadır. Bu, kaynak dosya sistemi ve açılacak dosyanın yolunu belirtmemizi sağlar. ZIPArchive ZIP dosyalarının herhangi bir sayıda içeriği olabilir ve bu içeriği kullanarak bir dosya belirtilen dizine çıkarabilir. ExtractArchiveToDirectory yöntemi tarafından gereken tek parametre, tek bir ZIP dosyasının içeriği için çıkarma noktası olarak kullanılan dizin yoludur.

Bu işlev, belirlenen dizine tüm dosyaları çıkarmak için ZIP paketindeki tüm dosya ve dizinlerde döngü yapar. Bir istisna oluştuğunda, örneğin ZIP dosyası eksik olduğunda veya çıkarma prosedürüyle ilgili sorunlar mevcut olduğunda, dikkatlice ele aldığınızdan emin olun. İstisnalar try-catch blokları kullanılarak yakalanabilir ve işlenebilir. Yığın çıkarma işlemleri için, ExtractArchiveToDirectory yöntemi, ZIP arşivindeki tüm dosya ve dizinlerin çıkarılmasını yöneterek çıkarma işlemlerini kolaylaştırır. ZIP dosyaları, IronZIP uzantı yöntemi ile oluşturulabilir.

IronZIP kütüphanesi hakkında daha fazla bilgi okumak için buraya tıklayın.

5. Sonuc

Geliştiriciler, C# uygulamalarında ZIP dosyalarını yönetmek için tasarlanmış bir .NET kütüphanesi olan IronZIP'in yardımıyla ZIP dosyalarının sıkıştırma, çıkarma ve manipülasyonunu yapabilir. IronZIP, belirli dosyaları çıkarma, dosyaları toplu olarak çıkarma, girişler ekleme ve mevcut arşivleri düzenleme gibi dosya işlemlerini daha basit hale getirerek karmaşık prosedürleri düzenler ve sezgisel bir API kullanır.

Bu kütüphane, C# projelerinde dosya yönetimi yeteneklerini baştan başlamak zorunda kalmadan geliştirmeye olanak tanır. Kolayca entegre olur. Çok yönlülüğü sayesinde, ZIP içeriği dinamik olarak değiştirilebilir, uygulama gereksinimlerinin çeşitliliğine uyacak şekilde dosyalar eklenir, değiştirilir ve kaldırılır.

Eksik veya hasarlı ZIP dosyaları gibi durumlarla uğraşırken, IronZIP'in güçlü istisna yönetim özellikleri, tutarlı bir iş akışı sağlar ve hata giderimini kolaylaştırır. Tarihsel olarak, .NET ortamlarında ZIP dosyalarını yönetmek için güvenilir bir çözüm sunmuş IronZIP, bilgilendirmemin en son güncellemeleri yansıtmayabileceğine dikkat edin. IronZIP'in fiyatlandırması $799 ile başlar ve ücretsiz bir geliştirici sürümü ile birlikte gelir. Lisans hakkında daha fazla bilgi almak için buraya bakabiliriz. Iron software ürünü için buraya bakın.

Sıkça Sorulan Sorular

ASP.NET Core'da dosyaları nasıl çıkarabilirim?

ASP.NET Core'da dosyaları çıkarmak için IronZIP kütüphanesini kullanabilirsiniz. İlk önce, Visual Studio'da NuGet Paket Yöneticisi üzerinden IronZIP'i yükleyin, sonra bir ZIP arşivinden belirtilen bir dizine dosyaları çıkarmak için IronArchive sınıfı ve ExtractArchiveToDirectory yöntemi kullanın.

IronZIP'in ZIP dosyalarını yönetmedeki ana özellikleri nelerdir?

IronZIP, ZIP dosyalarını yönetmek için birkaç özellik sunar, bu özellikler arasında oluşturma, çıkarma, sıkıştırma, şifreleme ve ZIP dosyalarını manipüle etme bulunur. Parola korumasını destekler ve performans için optimize edilmiş olup, çeşitli .NET çerçeveleri ile uyumludur.

Bir C# projesine IronZIP nasıl yüklenir?

Bir C# projesine IronZIP yüklemek için, Visual Studio'da NuGet İnsanı Kullanarak 'IronZIP' araştırın ve yükleyin. Alternatif olarak, Paket Yöneticisi Konsolu ile Install-Package IronZIP komutunu kullanın.

IronZIP, ZIP dosyalarını şifrelemek için kullanılabilir mi?

Evet, IronZIP ZIP dosyalarını şifreleyebilir. ZIP arşivlerinin içeriğinin güvenliğini sağlamak için parola koruma ve şifreleme araçlarını içerir.

ASP.NET Core'da ZIP dosya çıkarımı sırasında hatalarla karşılaşırsam ne yapmalıyım?

ZIP dosya çıkarımı sırasında hatalarla karşılaşırsanız, IronZIP'in istisna yönetim özelliklerini kullanın. Varsayılan zip dosyası olmadığı veya bozuk olması gibi istisnaları yönetmek için try-catch blokları uygulayın.

Geliştiriciler için IronZIP'in ücretsiz bir sürümü var mı?

Evet, IronZIP'in ücretli lisanslarının yanında, ilk maliyet olmadan özelliklerini keşfetmenizi sağlayan ücretsiz bir geliştirici sürümü sunmaktadır.

ASP.NET Core projelerimde ZIP dosyalarını yönetmek için neden IronZIP kullanmalıyım?

IronZIP, ASP.NET Core projelerinde ZIP dosya yönetimini, ZIP arşivlerini oluşturma, çıkartma ve değiştirme için sezgisel bir API sunarak, dosya yönetimi yeteneklerini arttırır.

IronZIP ZIP dosya çıkarımını nasıl yönetir?

IronZIP, ZIP arşiv içindeki tüm dosya ve dizinleri belirli bir dizin yoluna çıkartan ExtractArchiveToDirectory yöntemi aracılığıyla ZIP dosya çıkarımını yönetir, her unsuru verimli bir şekilde yönetir.

IronZIP ile ASP.NET Core'da kullanmak için yeni bir proje nasıl oluşturulur?

IronZIP ile kullanmak için yeni bir ASP.NET Core projesi oluşturmak amacıyla Visual Studio'da yeni bir proje kurun, NuGet üzerinden IronZIP'i yükleyin ve IronArchive sınıfını yöntemler gibi kullanarak ZIP dosyalarını yönetmek için uygulayın ExtractArchiveToDirectory.

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

Iron Destek Ekibi

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