ZipFileExtensions.ExtractToDirectory Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
ExtractToDirectory(ZipArchive, String) |
Zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar. |
ExtractToDirectory(ZipArchive, String, Boolean) |
Arşivdeki tüm dosyaları dosya sistemindeki bir dizine ayıklar. |
ExtractToDirectory(ZipArchive, String)
Zip arşivindeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.
public:
[System::Runtime::CompilerServices::Extension]
static void ExtractToDirectory(System::IO::Compression::ZipArchive ^ source, System::String ^ destinationDirectoryName);
public static void ExtractToDirectory (this System.IO.Compression.ZipArchive source, string destinationDirectoryName);
static member ExtractToDirectory : System.IO.Compression.ZipArchive * string -> unit
<Extension()>
Public Sub ExtractToDirectory (source As ZipArchive, destinationDirectoryName As String)
Parametreler
- source
- ZipArchive
Dosyaları ayıklamak için zip arşivi.
- destinationDirectoryName
- String
Ayıklanan dosyaları yerleştirecek dizinin yolu. Göreli veya mutlak bir yol belirtebilirsiniz. Göreli yol, geçerli çalışma dizinine göre yorumlanır.
Özel durumlar
destinationDirectoryName
is Empty, yalnızca boşluk içerir veya en az bir geçersiz karakter içerir.
destinationDirectoryName
, null
değeridir.
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şivden bir girdi ayıklandığında, tarafından destinationDirectoryName
belirtilen dizinin dışında bir dosya oluşturulur. (Örneğin, giriş adı üst dizin erişimcileri içeriyorsa bu durum oluşabilir.)
-veya-
Arşivdeki iki veya daha fazla girdi aynı ada sahip.
Çağıranın hedef dizine yazmak için gerekli izni yok.
destinationDirectoryName
geçersiz bir biçim içeriyor.
Arşiv girdisi bulunamıyor veya bozuk.
-veya-
Arşiv girdisi desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.
Örnekler
Aşağıdaki örnekte, mevcut bir dosyadan zip arşivinde yeni bir girdi oluşturma ve arşivi yeni bir dizine ayıklama gösterilmektedir.
using System;
using System.IO;
using System.IO.Compression;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
string zipPath = @"c:\users\exampleuser\start.zip";
string extractPath = @"c:\users\exampleuser\extract";
string newFile = @"c:\users\exampleuser\NewFile.txt";
using (ZipArchive archive = ZipFile.Open(zipPath, ZipArchiveMode.Update))
{
archive.CreateEntryFromFile(newFile, "NewEntry.txt");
archive.ExtractToDirectory(extractPath);
}
}
}
}
Imports System.IO
Imports System.IO.Compression
Module Module1
Sub Main()
Dim zipPath As String = "c:\users\exampleuser\end.zip"
Dim extractPath As String = "c:\users\exampleuser\extract"
Dim newFile As String = "c:\users\exampleuser\NewFile.txt"
Using archive As ZipArchive = ZipFile.Open(zipPath, ZipArchiveMode.Update)
archive.CreateEntryFromFile(newFile, "NewEntry.txt", CompressionLevel.Fastest)
archive.ExtractToDirectory(extractPath)
End Using
End Sub
End Module
Açıklamalar
Bu yöntem tarafından destinationDirectoryName
belirtilen dizini oluşturur. yöntemi ayrıca zip arşivindeki hiyerarşiyi yansıtan alt dizinler oluşturur. Ayıklama sırasında hata oluşursa arşiv kısmen ayıklanı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(ZipArchive, String, Boolean)
Arşivdeki tüm dosyaları dosya sistemindeki bir dizine ayıklar.
public:
[System::Runtime::CompilerServices::Extension]
static void ExtractToDirectory(System::IO::Compression::ZipArchive ^ source, System::String ^ destinationDirectoryName, bool overwriteFiles);
public static void ExtractToDirectory (this System.IO.Compression.ZipArchive source, string destinationDirectoryName, bool overwriteFiles);
static member ExtractToDirectory : System.IO.Compression.ZipArchive * string * bool -> unit
<Extension()>
Public Sub ExtractToDirectory (source As ZipArchive, destinationDirectoryName As String, overwriteFiles As Boolean)
Parametreler
- source
- ZipArchive
ZipArchive Ayıklanması gereken.
- destinationDirectoryName
- String
Dosya sistemindeki hedef dizinin yolu. Yol göreli veya mutlak olabilir. Göreli yol, geçerli çalışma dizinine göre yorumlanır.
- overwriteFiles
- Boolean
true
varolan dosyaların üzerine yazmak için; false
Aksi takdir -de.
Özel durumlar
destinationArchiveFileName
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.
destinationArchiveFileName
, null
değeridir.
Belirtilen yol, dosya adı veya her ikisi birden sistem tarafından tanımlanan en fazla uzunluğu aşıyor.
Belirtilen yol geçersiz (örneğin, eşlenmemiş bir sürücüde).
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-
bir ZipArchiveEntry ayıklandığında dışarıda destinationArchiveFileName
olan bir hedef dosya elde edilirdi (örneğin, giriş adı üst dizin erişimcileri içeriyorsa).
-veya-
, ZipArchiveEntry aynı arşivden ayıklanmış bir girdiyle aynı ada sahiptir.
Çağıranın gerekli izni yok.
destinationArchiveFileName
geçersiz biçimde.
Bir ZipArchiveEntry bulunamadı veya bozuk.
-veya-
, ZipArchiveEntry desteklenmeyen bir sıkıştırma yöntemi kullanılarak sıkıştırıldı.
Açıklamalar
Belirtilen dizin zaten var olabilir. Bu yöntem, gerekirse belirtilen dizini ve tüm alt dizinleri oluşturur.
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, girişin arşivin kökündekiyle aynı göreli yola destinationDirectoryName
sahiptir.
Arşivlenecek bir dosyanın son değiştirme zamanı geçersizse, Zip zaman damgası biçiminde (1 Ocak 1980'de gece yarısı) gösterilebilen ilk tarih ve saat kullanılır.