Share via


ZipFile.ExtractToDirectory Yöntem

Tanım

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

Aşırı Yüklemeler

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ı için belirtilen karakter kodlamasını kullanır ve isteğe bağlı olarak hedef dizindeki dosyaların üzerine yazılıp yazılmamasının seçilmesine izin verir.

ExtractToDirectory(String, String, Encoding)

Belirtilen zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar ve girdi adları 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 bunları 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 giriş adları 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

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ı 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 kodlamaya 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üde).

overwriteFiles is false ve ayıklanan bir arşiv girdisi içinde zaten var olan destinationDirectoryNamebir 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-

, ZipArchiveEntry aynı arşivden 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 oluşursa, arşiv kısmen ayıklanmış olarak kalır.

Her girdi ayıklanır, böylece ayıklanan dosya, girdinin arşivle aynı göreli yoluna destinationDirectoryName sahip olur.

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.

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.

Şunlara uygulanır

ExtractToDirectory(Stream, String, Encoding, Boolean)

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ı için belirtilen karakter kodlamasını kullanır ve isteğe bağlı olarak hedef dizindeki dosyaların üzerine yazılıp yazılmamasının seçilmesine 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şivdeki girdi adlarını okurken veya yazarken kullanılacak kodlama. Yalnızca giriş adları için UTF-8 kodlamasını desteklemeyen zip arşiv araçları ve kitaplıklarla birlikte çalışabilirlik için bir kodlama gerektiğinde bu parametre için bir değer belirtin.

overwriteFiles
Boolean

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

Özel durumlar

destinationDirectoryName> is Empty, yalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-veya-

entryNameEncoding UTF-8 dışında bir Unicode kodlamaya 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ı olur Empty, yalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-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 ve false ayıklanması gereken 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 bulunan 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, kaynak girdisinin arşivin köküne sahip olduğu gibi tarafından destinationDirectoryName belirtilen dizinle 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.

Şunlara uygulanır

ExtractToDirectory(String, String, Encoding)

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ı 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şivdeki girdi adlarını okurken veya yazarken kullanılacak kodlama. Yalnızca giriş adları için UTF-8 kodlamasını desteklemeyen zip arşiv araçları ve kitaplıklarla birlikte çalışabilirlik için bir kodlama gerektiğinde bu parametre için bir değer belirtin.

Özel durumlar

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

-veya-

entryNameEncoding UTF-8 dışında bir Unicode kodlamaya 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ı olur Empty, yalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-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, kaynak girdisinin arşivin köküne sahip olduğu gibi tarafından destinationDirectoryName belirtilen dizinle aynı göreli yola sahiptir.

dışında nullbir değere ayarlanırsaentryNameEncoding, giriş adlarının kodu aşağıdaki kurallara göre çözülmelidir:

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

olarak ayarlanırsa entryNameEncodingnull, giriş adlarının kodu 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ı geçerli sistem varsayılan kod sayfası kullanılarak çözülmektedir.
  • Dil kodlama bayrağının ayarlandığı girişler için, giriş adlarının kodu UTF-8 kullanılarak çözülmektedir.

Şunlara uygulanır

ExtractToDirectory(String, String, Boolean)

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üde).

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-

, 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 oluşursa, arşiv kısmen ayıklanmış olarak kalır.

Her girdi ayıklanır, böylece ayıklanan dosya, girdinin arşivle aynı göreli yoluna destinationDirectoryName sahip olur.

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.

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.

Şunlara uygulanır

ExtractToDirectory(Stream, String, Boolean)

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 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> is Empty, yalnı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ı olur Empty, yalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-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 ve false ayıklanması gereken 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 bulunan 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, kaynak girdisinin arşivin köküne sahip olduğu gibi tarafından destinationDirectoryName belirtilen dizinle 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.

Şunlara uygulanır

ExtractToDirectory(String, String)

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çeriyor veya en az bir geçersiz karakter içeriyor.

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ı olur Empty, yalnızca boşluk içerir veya en az bir geçersiz karakter içerir.

-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, kaynak girdisinin arşivin köküne sahip olduğu gibi tarafından destinationDirectoryName belirtilen dizinle aynı göreli yola sahiptir.

Şunlara uygulanır

ExtractToDirectory(Stream, String)

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 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çerir veya en az bir geçersiz karakter içerir.

-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 bulunan 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, kaynak girdisinin arşivin köküne sahip olduğu gibi tarafından destinationDirectoryName belirtilen dizinle 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.

Şunlara uygulanır

ExtractToDirectory(Stream, String, Encoding)

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 ve giriş adları 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şivdeki girdi adlarını okurken veya yazarken kullanılacak kodlama. Bu parametre için yalnızca giriş adları 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 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çerir veya en az bir geçersiz karakter içerir.

-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 bulunan 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, kaynak girdisinin arşivin köküne sahip olduğu gibi tarafından destinationDirectoryName belirtilen dizinle 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.

Şunlara uygulanır