Aracılığıyla paylaş


ZipFile.ExtractToDirectory Yöntem

Tanım

Belirtilen zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

Aşırı Yüklemeler

Name Description
ExtractToDirectory(String, String, Encoding, Boolean)

Belirtilen arşivdeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

ExtractToDirectory(Stream, String, Encoding, Boolean)

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve bunları dosya sistemindeki belirtilen hedef dizine yerleştirir, girdi adları ve açıklamaları için belirtilen karakter kodlamasını kullanır ve isteğe bağlı olarak hedef dizindeki dosyaların üzerine yazılıp yazılmadığını seçmeye izin verir.

ExtractToDirectory(String, String, Encoding)

Belirtilen zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar ve girdi adları ve açıklamalar için belirtilen karakter kodlamasını kullanır.

ExtractToDirectory(String, String, Boolean)

Belirtilen arşivdeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

ExtractToDirectory(Stream, String, Boolean)

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve dosya sistemindeki belirtilen hedef dizine yerleştirir ve isteğe bağlı olarak hedef dizindeki dosyaların üzerine yazılıp yazılmadığını seçmeye izin verir.

ExtractToDirectory(String, String)

Belirtilen zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

ExtractToDirectory(Stream, String)

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve dosya sistemindeki belirtilen hedef dizine yerleştirir.

ExtractToDirectory(Stream, String, Encoding)

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve dosya sistemindeki belirtilen hedef dizine yerleştirir ve girdi adları ve açıklamalar için belirtilen karakter kodlamasını kullanır.

ExtractToDirectory(String, String, Encoding, Boolean)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen arşivdeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding, bool overwriteFiles);
public static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles);
public static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding entryNameEncoding, bool overwriteFiles);
static member ExtractToDirectory : string * string * System.Text.Encoding * bool -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String, entryNameEncoding As Encoding, overwriteFiles As Boolean)

Parametreler

sourceArchiveFileName
String

Dosya sistemindeki ayıklanacak arşiv yolu.

destinationDirectoryName
String

Dosya sistemindeki hedef dizinin yolu.

entryNameEncoding
Encoding

Bu ZipArchiveiçindeki girdi adlarını ve açıklamalarını okurken kullanılacak kodlama.

overwriteFiles
Boolean

true dosyaların üzerine yazmak için; false Aksi takdir -de.

Özel durumlar

sourceArchiveFileName veya destinationDirectoryName sıfır uzunluklu bir dizedir, yalnızca boşluk içerir veya tarafından InvalidPathCharstanımlanan bir veya daha fazla geçersiz karakter içerir.

-veya-

entryNameEncoding UTF-8 dışında bir Unicode kodlamasına ayarlanır.

sourceArchiveFileName veya destinationDirectoryName şeklindedir null.

sourceArchiveFileName veya destinationDirectoryName sistem tarafından tanımlanan uzunluk üst sınırını aşan bir yol, dosya adı veya her ikisini de belirtir.

veya destinationDirectoryName tarafından sourceArchiveFileName belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüdedir).

overwriteFiles is false ve ayıklanması gereken bir arşiv girdisi, içinde destinationDirectoryNamezaten var olan bir dosyayla aynı ada sahiptir.

-veya-

G/Ç hatası oluştu.

-veya-

adı ZipArchiveEntry sıfır uzunlukludur, yalnızca boşluk içerir veya tarafından InvalidPathCharstanımlanan bir veya daha fazla geçersiz karakter içerir.

-veya-

ayıklandığında ZipArchiveEntry hedef dizinin dışındaki bir dosya hedefi elde edilir (örneğin, üst dizin erişimcileri nedeniyle).

-veya-

A ZipArchiveEntry , aynı arşivden zaten ayıklanmış bir girdiyle aynı ada sahiptir.

Çağıranın gerekli izni yok.

sourceArchiveFileName veya destinationDirectoryName geçersiz biçimdedir.

sourceArchiveFileName bulunamadı.

tarafından sourceArchiveFileName belirtilen arşiv geçerli ZipArchivebir değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Arşiv ayıklanırken bir hata varsa, arşiv kısmen ayıklanmış olarak kalır.

Her girdi, ayıklanan dosyanın arşive giden girişle aynı göreli yoluna destinationDirectoryName sahip olacak şekilde ayıklanır.

sourceArchiveFileName ve destinationDirectoryName parametreleri hem göreli hem de mutlak yolları kabul eder. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, zip zaman damgası biçiminde gösterilebilen ilk tarih ve saat (1 Ocak 1980'de gece yarısı) kullanılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(Stream, String, Encoding, Boolean)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve bunları dosya sistemindeki belirtilen hedef dizine yerleştirir, girdi adları ve açıklamaları için belirtilen karakter kodlamasını kullanır ve isteğe bağlı olarak hedef dizindeki dosyaların üzerine yazılıp yazılmadığını seçmeye izin verir.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding, bool overwriteFiles);
public static void ExtractToDirectory(System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles);
static member ExtractToDirectory : System.IO.Stream * string * System.Text.Encoding * bool -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String, entryNameEncoding As Encoding, overwriteFiles As Boolean)

Parametreler

source
Stream

Zip arşivinin ayıklandığı akış.

destinationDirectoryName
String

Göreli veya mutlak yol olarak belirtilen ayıklanan dosyaların yerleştirildiği dizinin yolu. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

entryNameEncoding
Encoding

Bu arşivde girdi adlarını ve açıklamalarını okurken veya yazarken kullanılacak kodlama. Bu parametre için yalnızca giriş adları veya açıklamaları için UTF-8 kodlamasını desteklemeyen zip arşiv araçları ve kitaplıklarıyla birlikte çalışabilirlik için bir kodlama gerektiğinde bir değer belirtin.

overwriteFiles
Boolean

true dosyaların üzerine yazmak için; false Aksi takdir -de.

Özel durumlar

destinationDirectoryName , Emptyyalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-veya-

entryNameEncoding UTF-8 dışında bir Unicode kodlamasına ayarlanır.

destinationDirectoryName veya source şeklindedir null.

içinde destinationDirectoryName belirtilen yol, sistem tarafından tanımlanan uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Arşivdeki bir girdinin adı, Emptyyalnızca boşluk içeriyor veya en az bir geçersiz karakter içeriyor.

-veya-

Arşiv girdisi ayıklandığında, tarafından destinationDirectoryNamebelirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)

-veya-

overwriteFiles is false ve ayıklanan bir arşiv girdisi, zaten ayıklanmış veya içinde destinationDirectoryNamevar olan bir girişle aynı ada sahiptir.

Çağıranın arşive veya hedef dizine erişmek için gerekli izni yok.

destinationDirectoryName geçersiz bir biçim içeriyor.

Akışta source yer alan arşiv geçerli bir zip arşivi değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Bu yöntem, belirtilen dizini ve tüm alt dizinleri oluşturur. Hedef dizin zaten var olamaz. parametrelerinde yer alan source zip arşivindeki veya dosyalarındaki destinationDirectoryName yolları doğrulamayla ilgili özel durumlar ayıklamadan önce oluşturulur. Aksi takdirde, ayıklama sırasında bir hata oluşursa arşiv kısmen ayıklanmış olarak kalır. Ayıklanan her dosya, tarafından belirtilen destinationDirectoryName dizinin kaynak girdisinin arşivin köküyle aynı göreli yola sahiptir.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, zip zaman damgası biçiminde gösterilebilen ilk tarih ve saat (1 Ocak 1980'de gece yarısı) kullanılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(String, String, Encoding)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar ve girdi adları ve açıklamalar için belirtilen karakter kodlamasını kullanır.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding);
public static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding entryNameEncoding);
public static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding);
static member ExtractToDirectory : string * string * System.Text.Encoding -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String, entryNameEncoding As Encoding)

Parametreler

sourceArchiveFileName
String

Ayıklanacak arşivin yolu.

destinationDirectoryName
String

Göreli veya mutlak yol olarak belirtilen ayıklanan dosyaların yerleştirildiği dizinin yolu. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

entryNameEncoding
Encoding

Bu arşivde girdi adlarını ve açıklamalarını okurken veya yazarken kullanılacak kodlama. Bu parametre için yalnızca giriş adları veya açıklamaları için UTF-8 kodlamasını desteklemeyen zip arşiv araçları ve kitaplıklarıyla birlikte çalışabilirlik için bir kodlama gerektiğinde bir değer belirtin.

Özel durumlar

destinationDirectoryName veya sourceArchiveFileName , Emptyyalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-veya-

entryNameEncoding UTF-8 dışında bir Unicode kodlamasına ayarlanır.

destinationDirectoryName veya sourceArchiveFileName şeklindedir null.

içinde belirtilen yol destinationDirectoryName veya sourceArchiveFileName sistem tanımlı uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Arşivdeki bir girdinin adı, Emptyyalnızca boşluk içeriyor veya en az bir geçersiz karakter içeriyor.

-veya-

Arşiv girdisi ayıklandığında, tarafından destinationDirectoryNamebelirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)

-veya-

Ayıklanan bir arşiv girdisi, zaten ayıklanmış veya içinde destinationDirectoryNamevar olan bir girişle aynı ada sahiptir.

Çağıranın arşive veya hedef dizine erişmek için gerekli izni yok.

destinationDirectoryName veya sourceArchiveFileName geçersiz bir biçim içeriyor.

sourceArchiveFileName bulunamadı.

tarafından sourceArchiveFileName belirtilen arşiv geçerli bir zip arşivi değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Bu yöntem, gerekirse belirtilen dizini ve tüm alt dizinleri oluşturur. veya sourceArchiveFileName parametrelerindeki destinationDirectoryName yolları doğrulamayla ilgili özel durumlar ayıklamadan önce oluşturulur. Aksi takdirde, ayıklama sırasında bir hata oluşursa arşiv kısmen ayıklanmış olarak kalır. Ayıklanan her dosya, tarafından belirtilen destinationDirectoryName dizinin kaynak girdisinin arşivin köküyle aynı göreli yola sahiptir.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

dışında nullbir değere ayarlanırsaentryNameEncoding, giriş adları ve açıklamaları aşağıdaki kurallara göre çözülecek:

  • Dil kodlama bayrağının (yerel dosya üst bilgisinin genel amaçlı bit bayrağında) ayarlanmadığı girişler için, belirtilen kodlama kullanılarak giriş adları ve açıklamaların kodu çözülmektedir.
  • Dil kodlama bayrağının ayarlandığı girişler için, giriş adları ve açıklamaları UTF-8 kullanılarak çözülmektedir.

olarak ayarlanırsa entryNameEncodingnull, giriş adları ve açıklamaları aşağıdaki kurallara göre çözülecek:

  • Dil kodlama bayrağının (yerel dosya üst bilgisinin genel amaçlı bit bayrağında) ayarlanmadığı girişler için, giriş adları ve açıklamaların kodu geçerli sistem varsayılan kod sayfası kullanılarak çözülmektedir.
  • Dil kodlama bayrağının ayarlandığı girişler için, giriş adları ve açıklamaları UTF-8 kullanılarak çözülmektedir.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(String, String, Boolean)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen arşivdeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName, bool overwriteFiles);
public static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName, bool overwriteFiles);
static member ExtractToDirectory : string * string * bool -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String, overwriteFiles As Boolean)

Parametreler

sourceArchiveFileName
String

Dosya sistemindeki ayıklanacak arşiv yolu.

destinationDirectoryName
String

Dosya sistemindeki hedef dizinin yolu.

overwriteFiles
Boolean

true dosyaların üzerine yazmak için; false Aksi takdir -de.

Özel durumlar

sourceArchiveFileName veya destinationDirectoryName sıfır uzunluklu bir dizedir, yalnızca boşluk içerir veya tarafından InvalidPathCharstanımlanan bir veya daha fazla geçersiz karakter içerir.

sourceArchiveFileName veya destinationDirectoryName şeklindedir null.

sourceArchiveFileName veya destinationDirectoryName sistem tarafından tanımlanan uzunluk üst sınırını aşan bir yol, dosya adı veya her ikisini de belirtir.

veya destinationDirectoryName tarafından sourceArchiveFileName belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüdedir).

overwriteFiles ve falsedestinationDirectoryName zaten ayıklanan dosyayla aynı ada sahip bir dosya içeriyor.

-veya-

G/Ç hatası oluştu.

-veya-

adı ZipArchiveEntry sıfır uzunlukludur, yalnızca boşluk içerir veya tarafından InvalidPathCharstanımlanan bir veya daha fazla geçersiz karakter içerir.

-veya-

ayıklandığında ZipArchiveEntry hedef dizinin dışındaki bir dosya hedefi elde edilir (örneğin, üst dizin erişimcileri nedeniyle).

-veya-

, ZipArchiveEntry zaten ayıklanmış olan aynı arşivdeki bir girdiyle aynı ada sahiptir.

Çağıranın gerekli izni yok.

sourceArchiveFileName veya destinationDirectoryName geçersiz biçimdedir.

sourceArchiveFileName bulunamadı.

tarafından sourceArchiveFileName belirtilen arşiv geçerli ZipArchivebir değil.

-veya-

Bir ZipArchiveEntry bulunamadı veya bozuk.

-veya-

A ZipArchiveEntry , desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Arşiv ayıklanırken bir hata varsa, arşiv kısmen ayıklanmış olarak kalır.

Her girdi, ayıklanan dosyanın arşive giden girişle aynı göreli yoluna destinationDirectoryName sahip olacak şekilde ayıklanır.

sourceArchiveFileName ve destinationDirectoryName parametreleri hem göreli hem de mutlak yolları kabul eder. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, zip zaman damgası biçiminde gösterilebilen ilk tarih ve saat (1 Ocak 1980'de gece yarısı) kullanılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(Stream, String, Boolean)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve dosya sistemindeki belirtilen hedef dizine yerleştirir ve isteğe bağlı olarak hedef dizindeki dosyaların üzerine yazılıp yazılmadığını seçmeye izin verir.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName, bool overwriteFiles);
public static void ExtractToDirectory(System.IO.Stream source, string destinationDirectoryName, bool overwriteFiles);
static member ExtractToDirectory : System.IO.Stream * string * bool -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String, overwriteFiles As Boolean)

Parametreler

source
Stream

Zip arşivinin ayıklandığı akış.

destinationDirectoryName
String

Göreli veya mutlak yol olarak belirtilen ayıklanan dosyaların yerleştirildiği dizinin yolu. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

overwriteFiles
Boolean

true dosyaların üzerine yazmak için; false Aksi takdir -de.

Özel durumlar

destinationDirectoryName , Emptyyalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

destinationDirectoryName veya source şeklindedir null.

içinde destinationDirectoryName belirtilen yol, sistem tarafından tanımlanan uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Arşivdeki bir girdinin adı, Emptyyalnızca boşluk içeriyor veya en az bir geçersiz karakter içeriyor.

-veya-

Arşiv girdisi ayıklandığında, tarafından destinationDirectoryNamebelirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)

-veya-

overwriteFiles is false ve ayıklanan bir arşiv girdisi, zaten ayıklanmış veya içinde destinationDirectoryNamevar olan bir girişle aynı ada sahiptir.

Çağıranın arşive veya hedef dizine erişmek için gerekli izni yok.

destinationDirectoryName geçersiz bir biçim içeriyor.

Akışta source yer alan arşiv geçerli bir zip arşivi değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Bu yöntem, belirtilen dizini ve tüm alt dizinleri oluşturur. Hedef dizin zaten var olamaz. parametrelerinde yer alan source zip arşivindeki veya dosyalarındaki destinationDirectoryName yolları doğrulamayla ilgili özel durumlar ayıklamadan önce oluşturulur. Aksi takdirde, ayıklama sırasında bir hata oluşursa arşiv kısmen ayıklanmış olarak kalır. Ayıklanan her dosya, tarafından belirtilen destinationDirectoryName dizinin kaynak girdisinin arşivin köküyle aynı göreli yola sahiptir.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, zip zaman damgası biçiminde gösterilebilen ilk tarih ve saat (1 Ocak 1980'de gece yarısı) kullanılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(String, String)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.

public:
 static void ExtractToDirectory(System::String ^ sourceArchiveFileName, System::String ^ destinationDirectoryName);
public static void ExtractToDirectory(string sourceArchiveFileName, string destinationDirectoryName);
static member ExtractToDirectory : string * string -> unit
Public Shared Sub ExtractToDirectory (sourceArchiveFileName As String, destinationDirectoryName As String)

Parametreler

sourceArchiveFileName
String

Ayıklanacak arşivin yolu.

destinationDirectoryName
String

Göreli veya mutlak yol olarak belirtilen ayıklanan dosyaların yerleştirildiği dizinin yolu. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

Özel durumlar

destinationDirectoryName veya sourceArchiveFileName , Emptyyalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

destinationDirectoryName veya sourceArchiveFileName şeklindedir null.

içinde belirtilen yol destinationDirectoryName veya sourceArchiveFileName sistem tanımlı uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Arşivdeki bir girdinin adı, Emptyyalnızca boşluk içeriyor veya en az bir geçersiz karakter içeriyor.

-veya-

Arşiv girdisi ayıklandığında, tarafından destinationDirectoryNamebelirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)

-veya-

Ayıklanan bir arşiv girdisi, zaten ayıklanmış veya içinde destinationDirectoryNamevar olan bir girişle aynı ada sahiptir.

Çağıranın arşive veya hedef dizine erişmek için gerekli izni yok.

destinationDirectoryName veya sourceArchiveFileName geçersiz bir biçim içeriyor.

sourceArchiveFileName bulunamadı.

tarafından sourceArchiveFileName belirtilen arşiv geçerli bir zip arşivi değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Örnekler

Bu örnekte, sınıfını kullanarak zip arşivi oluşturma ve ayıklama gösterilmektedir ZipFile . Bir klasörün içeriğini zip arşivinde sıkıştırır ve bu içeriği yeni bir klasöre ayıklar. sınıfını ZipFile kullanmak için projenizdeki derlemeye System.IO.Compression.FileSystem başvurmanız gerekir.

using System;
using System.IO.Compression;

class Program
{
    static void Main(string[] args)
    {
        string startPath = @".\start";
        string zipPath = @".\result.zip";
        string extractPath = @".\extract";

        ZipFile.CreateFromDirectory(startPath, zipPath);

        ZipFile.ExtractToDirectory(zipPath, extractPath);
    }
}
open System.IO.Compression

let startPath = @".\start"
let zipPath = @".\result.zip"
let extractPath = @".\extract"

ZipFile.CreateFromDirectory(startPath, zipPath)

ZipFile.ExtractToDirectory(zipPath, extractPath)
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim startPath As String = ".\start"
        Dim zipPath As String = ".\result.zip"
        Dim extractPath As String = ".\extract"

        ZipFile.CreateFromDirectory(startPath, zipPath)

        ZipFile.ExtractToDirectory(zipPath, extractPath)
    End Sub

End Module

Açıklamalar

Bu yöntem, belirtilen dizini ve tüm alt dizinleri oluşturur. Hedef dizin zaten var olamaz. veya sourceArchiveFileName parametrelerindeki destinationDirectoryName yolları doğrulamayla ilgili özel durumlar ayıklamadan önce oluşturulur. Aksi takdirde, ayıklama sırasında bir hata oluşursa arşiv kısmen ayıklanmış olarak kalır. Ayıklanan her dosya, tarafından belirtilen destinationDirectoryName dizinin kaynak girdisinin arşivin köküyle aynı göreli yola sahiptir.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(Stream, String)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve dosya sistemindeki belirtilen hedef dizine yerleştirir.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName);
public static void ExtractToDirectory(System.IO.Stream source, string destinationDirectoryName);
static member ExtractToDirectory : System.IO.Stream * string -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String)

Parametreler

source
Stream

Zip arşivinin ayıklandığı akış.

destinationDirectoryName
String

Göreli veya mutlak yol olarak belirtilen ayıklanan dosyaların yerleştirildiği dizinin yolu. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

Özel durumlar

destinationDirectoryName , Emptyyalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

destinationDirectoryName veya source şeklindedir null.

içinde destinationDirectoryName belirtilen yol, sistem tarafından tanımlanan uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Arşivdeki bir girdinin adı, Emptyyalnızca boşluk içeriyor veya en az bir geçersiz karakter içeriyor.

-veya-

Arşiv girdisi ayıklandığında, tarafından destinationDirectoryNamebelirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)

-veya-

Ayıklanan bir arşiv girdisi, zaten ayıklanmış veya içinde destinationDirectoryNamevar olan bir girişle aynı ada sahiptir.

Çağıranın arşive veya hedef dizine erişmek için gerekli izni yok.

destinationDirectoryName geçersiz bir biçim içeriyor.

Akışta source yer alan arşiv geçerli bir zip arşivi değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Bu yöntem, belirtilen dizini ve tüm alt dizinleri oluşturur. Hedef dizin zaten var olamaz. parametrelerinde yer alan source zip arşivindeki veya dosyalarındaki destinationDirectoryName yolları doğrulamayla ilgili özel durumlar ayıklamadan önce oluşturulur. Aksi takdirde, ayıklama sırasında bir hata oluşursa arşiv kısmen ayıklanmış olarak kalır. Ayıklanan her dosya, tarafından belirtilen destinationDirectoryName dizinin kaynak girdisinin arşivin köküyle aynı göreli yola sahiptir.

Zip arşivindeki bir girdi sembolik bir bağlantıysa, sembolik bağlantı bilgileri ZIP biçiminde korunmadığından normal bir klasör olarak ayıklanır. Üst dizinlerinden herhangi biri önceden var olan bir birleşim veya sembolik bağlantıysa destinationDirectoryName , bağlantı izlenir ve ayıklama son hedef klasöre yazılır.

Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, zip zaman damgası biçiminde gösterilebilen ilk tarih ve saat (1 Ocak 1980'de gece yarısı) kullanılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır

ExtractToDirectory(Stream, String, Encoding)

Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs
Kaynak:
ZipFile.Extract.cs

Belirtilen akışta depolanan zip arşivindeki tüm dosyaları ayıklar ve dosya sistemindeki belirtilen hedef dizine yerleştirir ve girdi adları ve açıklamalar için belirtilen karakter kodlamasını kullanır.

public:
 static void ExtractToDirectory(System::IO::Stream ^ source, System::String ^ destinationDirectoryName, System::Text::Encoding ^ entryNameEncoding);
public static void ExtractToDirectory(System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding);
static member ExtractToDirectory : System.IO.Stream * string * System.Text.Encoding -> unit
Public Shared Sub ExtractToDirectory (source As Stream, destinationDirectoryName As String, entryNameEncoding As Encoding)

Parametreler

source
Stream

Zip arşivinin ayıklandığı akış.

destinationDirectoryName
String

Göreli veya mutlak yol olarak belirtilen ayıklanan dosyaların yerleştirildiği dizinin yolu. Göreli yol, geçerli çalışma dizinine göre yorumlanır.

entryNameEncoding
Encoding

Bu arşivde girdi adlarını ve açıklamalarını okurken veya yazarken kullanılacak kodlama. Bu parametre için yalnızca giriş adları veya açıklamaları için UTF-8 kodlamasını desteklemeyen zip arşiv araçları ve kitaplıklarıyla birlikte çalışabilirlik için bir kodlama gerektiğinde bir değer belirtin.

Özel durumlar

destinationDirectoryName , Emptyyalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-veya-

entryNameEncoding UTF-8 dışında bir Unicode kodlamasına ayarlanır.

destinationDirectoryName veya source şeklindedir null.

içinde destinationDirectoryName belirtilen yol, sistem tarafından tanımlanan uzunluk üst sınırını aşıyor.

Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).

Arşivdeki bir girdinin adı, Emptyyalnızca boşluk içeriyor veya en az bir geçersiz karakter içeriyor.

-veya-

Arşiv girdisi ayıklandığında, tarafından destinationDirectoryNamebelirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)

-veya-

Ayıklanan bir arşiv girdisi, zaten ayıklanmış veya içinde destinationDirectoryNamevar olan bir girişle aynı ada sahiptir.

Çağıranın arşive veya hedef dizine erişmek için gerekli izni yok.

destinationDirectoryName geçersiz bir biçim içeriyor.

Akışta source yer alan arşiv geçerli bir zip arşivi değil.

-veya-

Arşiv girdisi bulunamadı veya bozuk.

-veya-

Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.

Açıklamalar

Bu yöntem, belirtilen dizini ve tüm alt dizinleri oluşturur. Hedef dizin zaten var olamaz. parametrelerinde yer alan source zip arşivindeki veya dosyalarındaki destinationDirectoryName yolları doğrulamayla ilgili özel durumlar ayıklamadan önce oluşturulur. Aksi takdirde, ayıklama sırasında bir hata oluşursa arşiv kısmen ayıklanmış olarak kalır. Ayıklanan her dosya, tarafından belirtilen destinationDirectoryName dizinin kaynak girdisinin arşivin köküyle aynı göreli yola sahiptir.

Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, zip zaman damgası biçiminde gösterilebilen ilk tarih ve saat (1 Ocak 1980'de gece yarısı) kullanılır.

Uyarı

Bu yöntem, toplam sıkıştırılmamış boyutu veya arşivden ayıklanan girdi sayısını sınırlamaz. Güvenilmeyen kaynaklardan gelen arşivleri işlerken, kullanarak ZipArchivegirdileri el ile yineleyip toplam sıkıştırılmamış boyutun ve girdi sayısının senaryonuz için kabul edilebilir sınırlar içinde olduğunu doğrulayın.

Şunlara uygulanır