Bu nasıl yapılır eğitiminde, Zip dosyasını C# kodunda nasıl çıkaracağınızı göstereceğiz. Uygulamalarınızda bir arşivi açmak için C# kullanabilirsiniz. Bu kod, GZip, RAR, TAR, 7Zip ve daha fazlası gibi birden çok zip or archive file formats destekler.
C#‘da Zip Dosyasını Çıkarma Adımları
- NuGet.org’dan Aspose.Zip for .NET paketini yükleyin
- Kodda Aspose.Zip ad alanını dahil edin
- Aspose.Zip API lisansını ayarlamak için SetLicense yöntemini kullanın
- Giriş Zip dosyasını bir FileStream nesnesine yükleyin
- Dosya akışından yeni bir Archive object oluşturun
- Arşivdeki dosyaların sayısını alın ve arşiv girişleri arasında dolaşın
- Her arşiv girişini çıkarın ve dosyayı diske kaydedin
Arşivdeki her giriş sadece dosyayı değil, aynı zamanda dosyanın adını da içerir. Dosya adını almak için Name özelliğini kullandık ve ardından aynı ada sahip dosyayı çıkardık.
C#‘da Zip Dosyasını Çıkarma Kodu
using System; | |
using System.IO; | |
using System.Text; | |
//Add reference to Aspose.Zip for .NET API | |
//Use following namespace to extract zip file | |
using Aspose.Zip; | |
namespace ExtractZipFile | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
//Set Aspose license before extracting Zip file | |
//using Aspose.Zip for .NET | |
Aspose.Zip.License AsposeZipLicense = new Aspose.Zip.License(); | |
AsposeZipLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
//Open file from disk using a file stream | |
FileStream ZipFileToBeExtracted = File.Open("ZipFileToBeExtracted.zip", FileMode.Open); | |
//Load Zip file stream to Archive object | |
Archive ZipArchiveToExtract = new Archive(ZipFileToBeExtracted); | |
//Get number of files | |
int NumberOfFileInArchive = ZipArchiveToExtract.Entries.Count; | |
//Loop through the archive for each file | |
for(int FileCounter =0; FileCounter < NumberOfFileInArchive; FileCounter++) | |
{ | |
//Get each zip archive entry and extract the file | |
ArchiveEntry ArchiveFileEntry = ZipArchiveToExtract.Entries[FileCounter]; | |
string NameOfFileInZipEntry = ArchiveFileEntry.Name; | |
ArchiveFileEntry.Extract(NameOfFileInZipEntry); | |
} | |
} | |
} | |
} |
Yukarıdaki kodda, Zip archive dosyasını yüklemek için FileStream’i kullandık ve ardından çıkarılan çıktı dosyalarını diske kaydettik. Dosyayı bellekte açmak için bu kodu C#‘da da kullanabilirsiniz. Bu, kod veya uygulamada bu dosyalara daha fazla ihtiyacınız olduğunda ve diske kaydetmek istemiyorsanız yardımcı olabilir. Bu kodu kullanarak, uygulamalarınızda veya bağımsız bir yardımcı program olarak kendi C# Zip çıkarıcınızı kolayca ve hızlı bir şekilde oluşturabilirsiniz.