.NET Sınıf Kitaplığı Bölüm 5’teki Yenilikler: ZIP Dosyaları Oluşturma

Womanne

Member
.NET Framework Sınıf Kitaplığının 4.5 sürümü 947 yeni sınıf içerir. Bir dizi makale, büyük kütüphaneleri ilgilendirmeyen ve bu nedenle kamuoyunun gözünde o kadar da fazla olmayan on yeniliği sunuyor. sondan sonra açık bıraksunulan seçenek, bugünün 5. bölümü ZIP dosyaları oluşturmakla ilgilidir.


ad alanında System.IO.Compression (montaj DLL’si System.IO.Compression.dll VE System.IO.Compression.FileSystem.dll) .NET 4.5’te ZIP arşiv dosyalarıyla çalışmak için yeni sınıflar mevcuttur: zip dosyaları, ZipDosya Uzantıları, Zip arşivi, ZipArşivGirişi VE ZipArşiv Modu. Şimdiye kadar, yalnızca bir akışı ZIP yoluyla sıkıştıran veya sıkıştırılmış halden çıkaran sınıflar vardı. sınıflar bir Sistem.IO.Paketleme Microsoft tarafından XPS ve Microsoft Office’te kullanılan ZIP paketleri için özel olarak tasarlanmıştır.

En basit durumda, yeni sınıfı kullanırsınız zip dosyaları tüm bir dizini paketlemek veya bir dizine paketini açmak için:

Console.WriteLine("Erstelle ZIP-Datei...");
ZipFile.CreateFromDirectory(@"w:documents", @"w:documents-Archiv.zip",
CompressionLevel.Optimal, true);
Console.WriteLine("Entpacke ZIP-Datei...");
ZipFile.ExtractToDirectory(@"w:documents-Archiv.zip",
@"w:documents-archiv");

Hangi dosyaları sıkıştırıp açacağınız üzerinde daha fazla kontrole sahip olursunuz. Zip arşivi– Şuna itiraz et ZipFile.Open() alındı, aşağıdaki listeye bakın:

/// <summary>
/// Packen einer ZIP-Datei
/// </summary>
public static void RunZip()
{
string ZipDateiPfad = @"c";
Console.WriteLine("Erstelle ZIP-Datei " + ZipDateiPfad);
if (System.IO.File.Exists(ZipDateiPfad))
System.IO.File.Delete(ZipDateiPfad);
IEnumerable<string> files =
Directory.EnumerateFiles(@"w:documents", "*.docx");
using (ZipArchive zipArchive =
ZipFile.Open(@ZipDateiPfad, ZipArchiveMode.Create))
{
foreach (string file in files)
{
var eintragName = Path.Combine("Dokumente",
Path.GetFileName(file));
zipArchive.CreateEntryFromFile(file, eintragName);
}
}
Console.WriteLine(files.Count() + " Dateien archiviert!");
}

/// <summary>
/// Entpacken einer ZIP-Datei
/// </summary>
public static void RunUnzip()
{
string ZipDateiPfad = @"w:documents.zip";
Console.WriteLine("Entpacke ZIP-Datei " + ZipDateiPfad);

using (ZipArchive zipArchive =
ZipFile.Open(ZipDateiPfad, ZipArchiveMode.Read))
{
foreach (ZipArchiveEntry entry in zipArchive.Entries)
{
if (entry.Length < 10000)
{
using (Stream eingabe = entry.Open())
{
Console.WriteLine(entry.Name);
var ausgabe = File.Create(@"w:documentsentpackt_"
+ entry.Name);
eingabe.CopyTo(ausgabe);
ausgabe.Close();
}
}
}
}
}


()






Haberin Sonu
 
Üst