ZipFile.ExtractToDirectory Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Extrahuje všechny soubory v zadaném archivu zip do adresáře v systému souborů.
Přetížení
| Name | Description |
|---|---|
| ExtractToDirectory(String, String, Encoding, Boolean) |
Extrahuje všechny soubory v zadaném archivu do adresáře v systému souborů. |
| ExtractToDirectory(Stream, String, Encoding, Boolean) |
Extrahuje všechny soubory z archivu zip uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů, použije zadané kódování znaků pro názvy položek a komentáře a volitelně umožňuje zvolit, jestli se mají soubory v cílovém adresáři přepsat. |
| ExtractToDirectory(String, String, Encoding) |
Extrahuje všechny soubory v zadaném archivu zip do adresáře v systému souborů a použije zadané kódování znaků pro názvy položek a komentáře. |
| ExtractToDirectory(String, String, Boolean) |
Extrahuje všechny soubory v zadaném archivu do adresáře v systému souborů. |
| ExtractToDirectory(Stream, String, Boolean) |
Extrahuje všechny soubory z archivu ZIP uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů a volitelně umožňuje zvolit, jestli se mají soubory v cílovém adresáři přepsat. |
| ExtractToDirectory(String, String) |
Extrahuje všechny soubory v zadaném archivu zip do adresáře v systému souborů. |
| ExtractToDirectory(Stream, String) |
Extrahuje všechny soubory z archivu zip uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů. |
| ExtractToDirectory(Stream, String, Encoding) |
Extrahuje všechny soubory z archivu ZIP uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů a použije kódování zadaného znaku pro názvy položek a komentáře. |
ExtractToDirectory(String, String, Encoding, Boolean)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory v zadaném archivu do adresáře v systému souborů.
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)
Parametry
- sourceArchiveFileName
- String
Cesta v systému souborů k archivu, který se má extrahovat.
- destinationDirectoryName
- String
Cesta k cílovému adresáři v systému souborů.
- entryNameEncoding
- Encoding
Kódování, které se má použít při čtení názvů položek a komentářů v tomto ZipArchivesouboru .
- overwriteFiles
- Boolean
true přepsání souborů; false Jinak.
Výjimky
sourceArchiveFileNamenebo destinationDirectoryName je řetězec nulové délky, obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků definovaných .InvalidPathChars
nebo
entryNameEncoding je nastavena na kódování Unicode jiné než UTF-8.
sourceArchiveFileName nebo destinationDirectoryName je null.
sourceArchiveFileName nebo destinationDirectoryName určuje cestu, název souboru nebo obojí, které překračují maximální délku definovanou systémem.
Cesta zadaná sourceArchiveFileName nebo destinationDirectoryName neplatná (například je na nemapované jednotce).
overwriteFilesje false a položka archivu pro extrakci má stejný název jako soubor, který již existuje .destinationDirectoryName
nebo
Došlo k vstupně-výstupní chybě.
nebo
Název je nulová délka, obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných ZipArchiveEntry znaků, jak je definováno InvalidPathChars.
nebo
Extrahováním by ZipArchiveEntry došlo k cíli souboru, který je mimo cílový adresář (například kvůli nadřazeným přístupovým objektům adresáře).
nebo
A ZipArchiveEntry má stejný název jako již extrahovaná položka ze stejného archivu.
Volající nemá požadované oprávnění.
sourceArchiveFileName nebo destinationDirectoryName je v neplatném formátu.
sourceArchiveFileName nebyl nalezen.
Archiv určený sourceArchiveFileName není platný ZipArchive.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Poznámky
Pokud při extrahování archivu dojde k chybě, archiv zůstane částečně extrahovaný.
Každá položka se extrahuje tak, aby extrahovaný soubor má stejnou relativní cestu k destinationDirectoryName archivu jako položka.
destinationDirectoryName Parametry sourceArchiveFileName přijímají relativní i absolutní cesty. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP.
Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Pokud má archivovaný soubor neplatný čas poslední změny, použije se první datum a čas představující ve formátu zip timestamp (půlnoc 1. ledna 1980).
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(Stream, String, Encoding, Boolean)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory z archivu zip uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů, použije zadané kódování znaků pro názvy položek a komentáře a volitelně umožňuje zvolit, jestli se mají soubory v cílovém adresáři přepsat.
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)
Parametry
- source
- Stream
Stream, ze kterého se má archiv zip extrahovat.
- destinationDirectoryName
- String
Cesta k adresáři, do kterého se mají umístit extrahované soubory zadané jako relativní nebo absolutní cesta. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
- entryNameEncoding
- Encoding
Kódování, které se má použít při čtení nebo zápisu názvů položek a komentářů v tomto archivu. Zadejte hodnotu pro tento parametr pouze v případě, že je vyžadováno kódování pro interoperabilitu s nástroji a knihovnami zip archivu, které nepodporují kódování UTF-8 pro názvy položek nebo komentáře.
- overwriteFiles
- Boolean
true přepsání souborů; false Jinak.
Výjimky
destinationDirectoryName je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
entryNameEncoding je nastavena na kódování Unicode jiné než UTF-8.
destinationDirectoryName nebo source je null.
Zadaná cesta destinationDirectoryName překračuje maximální délku definovanou systémem.
Zadaná cesta je neplatná (například je na nemapované jednotce).
Název položky v archivu je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
Extrahování položky archivu by vytvořilo soubor, který je mimo adresář určený destinationDirectoryName. (K tomu může dojít například v případě, že název položky obsahuje nadřazené přístupové objekty adresáře.)
nebo
overwriteFiles je false a položka archivu pro extrakci má stejný název jako položka, která již byla extrahována nebo existuje v destinationDirectoryName.
Volající nemá požadovaná oprávnění pro přístup k archivu nebo cílovému adresáři.
destinationDirectoryName obsahuje neplatný formát.
Archiv obsažený ve streamu source není platný archiv zip.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Poznámky
Tato metoda vytvoří zadaný adresář a všechny podadresáře. Cílový adresář již neexistuje. Výjimky související s ověřováním cest v destinationDirectoryName archivu zip nebo souborů v archivu zip obsažené v parametrech source jsou vyvolány před extrahováním. V opačném případě, pokud dojde k chybě během extrakce, archiv zůstane částečně extrahován. Každý extrahovaný soubor má stejnou relativní cestu k adresáři určenému jeho zdrojovým destinationDirectoryName záznamem do kořenového adresáře archivu.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP. Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Pokud má archivovaný soubor neplatný čas poslední změny, použije se první datum a čas představující ve formátu zip timestamp (půlnoc 1. ledna 1980).
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(String, String, Encoding)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory v zadaném archivu zip do adresáře v systému souborů a použije zadané kódování znaků pro názvy položek a komentáře.
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)
Parametry
- sourceArchiveFileName
- String
Cesta k archivu, který se má extrahovat.
- destinationDirectoryName
- String
Cesta k adresáři, do kterého se mají umístit extrahované soubory zadané jako relativní nebo absolutní cesta. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
- entryNameEncoding
- Encoding
Kódování, které se má použít při čtení nebo zápisu názvů položek a komentářů v tomto archivu. Zadejte hodnotu pro tento parametr pouze v případě, že je vyžadováno kódování pro interoperabilitu s nástroji a knihovnami zip archivu, které nepodporují kódování UTF-8 pro názvy položek nebo komentáře.
Výjimky
destinationDirectoryName nebo sourceArchiveFileName je Empty, obsahuje pouze prázdné znaky nebo obsahuje alespoň jeden neplatný znak.
nebo
entryNameEncoding je nastavena na kódování Unicode jiné než UTF-8.
destinationDirectoryName nebo sourceArchiveFileName je null.
Zadaná cesta přesahuje destinationDirectoryName maximální sourceArchiveFileName délku definovanou systémem.
Zadaná cesta je neplatná (například je na nemapované jednotce).
Název položky v archivu je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
Extrahování položky archivu by vytvořilo soubor, který je mimo adresář určený destinationDirectoryName. (K tomu může dojít například v případě, že název položky obsahuje nadřazené přístupové objekty adresáře.)
nebo
Položka archivu pro extrakci má stejný název jako položka, která již byla extrahována nebo existuje v destinationDirectoryName.
Volající nemá požadovaná oprávnění pro přístup k archivu nebo cílovému adresáři.
destinationDirectoryName nebo sourceArchiveFileName obsahuje neplatný formát.
sourceArchiveFileName nebyl nalezen.
Archiv určený není platným archivem sourceArchiveFileName zip.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Poznámky
Tato metoda v případě potřeby vytvoří zadaný adresář a všechny podadresáře. Výjimky související s ověřováním cest v parametrech destinationDirectoryName nebo sourceArchiveFileName cest jsou vyvolány před extrakcí. V opačném případě, pokud dojde k chybě během extrakce, archiv zůstane částečně extrahován. Každý extrahovaný soubor má stejnou relativní cestu k adresáři určenému jeho zdrojovým destinationDirectoryName záznamem do kořenového adresáře archivu.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP.
Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Je-li entryNameEncoding nastavena na jinou hodnotu než null, názvy položek a komentáře jsou dekódovány podle následujících pravidel:
- U položek, u kterých není nastaven příznak kódování jazyka (v příznaku bitu pro obecné účely hlavičky místního souboru), jsou názvy položek a komentáře dekódovány pomocí zadaného kódování.
- Pro položky, kde je nastaven příznak kódování jazyka, jsou názvy položek a komentáře dekódovány pomocí UTF-8.
Pokud entryNameEncoding je nastavena hodnota null, názvy položek a komentáře jsou dekódovány podle následujících pravidel:
- Pro položky, ve kterých není nastaven příznak kódování jazyka (v příznaku bitu pro obecné účely hlavičky místního souboru), jsou názvy položek a komentáře dekódovány pomocí aktuální výchozí znakové stránky systému.
- Pro položky, kde je nastaven příznak kódování jazyka, jsou názvy položek a komentáře dekódovány pomocí UTF-8.
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(String, String, Boolean)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory v zadaném archivu do adresáře v systému souborů.
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)
Parametry
- sourceArchiveFileName
- String
Cesta v systému souborů k archivu, který se má extrahovat.
- destinationDirectoryName
- String
Cesta k cílovému adresáři v systému souborů.
- overwriteFiles
- Boolean
true přepsání souborů; false Jinak.
Výjimky
sourceArchiveFileNamenebo destinationDirectoryName je řetězec nulové délky, obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků definovaných .InvalidPathChars
sourceArchiveFileName nebo destinationDirectoryName je null.
sourceArchiveFileName nebo destinationDirectoryName určuje cestu, název souboru nebo obojí, které překračují maximální délku definovanou systémem.
Cesta zadaná sourceArchiveFileName nebo destinationDirectoryName neplatná (například je na nemapované jednotce).
overwriteFiles
destinationDirectoryName obsahuje false soubor se stejným názvem jako extrahovaný soubor.
nebo
Došlo k vstupně-výstupní chybě.
nebo
Název je nulová délka, obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných ZipArchiveEntry znaků, jak je definováno InvalidPathChars.
nebo
Extrahováním by ZipArchiveEntry došlo k cíli souboru, který je mimo cílový adresář (například kvůli nadřazeným přístupovým objektům adresáře).
nebo
A ZipArchiveEntry má stejný název jako položka ze stejného archivu, který už byl extrahován.
Volající nemá požadované oprávnění.
sourceArchiveFileName nebo destinationDirectoryName je v neplatném formátu.
sourceArchiveFileName nebyl nalezen.
Archiv určený sourceArchiveFileName není platný ZipArchive.
nebo
Nebyla ZipArchiveEntry nalezena nebo byla poškozena.
nebo
Byl ZipArchiveEntry komprimován pomocí metody komprese, která není podporována.
Poznámky
Pokud při extrahování archivu dojde k chybě, archiv zůstane částečně extrahovaný.
Každá položka se extrahuje tak, aby extrahovaný soubor má stejnou relativní cestu k destinationDirectoryName archivu jako položka.
destinationDirectoryName Parametry sourceArchiveFileName přijímají relativní i absolutní cesty. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP.
Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Pokud má archivovaný soubor neplatný čas poslední změny, použije se první datum a čas představující ve formátu zip timestamp (půlnoc 1. ledna 1980).
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(Stream, String, Boolean)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory z archivu ZIP uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů a volitelně umožňuje zvolit, jestli se mají soubory v cílovém adresáři přepsat.
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)
Parametry
- source
- Stream
Stream, ze kterého se má archiv zip extrahovat.
- destinationDirectoryName
- String
Cesta k adresáři, do kterého se mají umístit extrahované soubory zadané jako relativní nebo absolutní cesta. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
- overwriteFiles
- Boolean
true přepsání souborů; false Jinak.
Výjimky
destinationDirectoryName je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
destinationDirectoryName nebo source je null.
Zadaná cesta destinationDirectoryName překračuje maximální délku definovanou systémem.
Zadaná cesta je neplatná (například je na nemapované jednotce).
Název položky v archivu je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
Extrahování položky archivu by vytvořilo soubor, který je mimo adresář určený destinationDirectoryName. (K tomu může dojít například v případě, že název položky obsahuje nadřazené přístupové objekty adresáře.)
nebo
overwriteFiles je false a položka archivu pro extrakci má stejný název jako položka, která již byla extrahována nebo existuje v destinationDirectoryName.
Volající nemá požadovaná oprávnění pro přístup k archivu nebo cílovému adresáři.
destinationDirectoryName obsahuje neplatný formát.
Archiv obsažený ve streamu source není platný archiv zip.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Poznámky
Tato metoda vytvoří zadaný adresář a všechny podadresáře. Cílový adresář již neexistuje. Výjimky související s ověřováním cest v destinationDirectoryName archivu zip nebo souborů v archivu zip obsažené v parametrech source jsou vyvolány před extrahováním. V opačném případě, pokud dojde k chybě během extrakce, archiv zůstane částečně extrahován. Každý extrahovaný soubor má stejnou relativní cestu k adresáři určenému jeho zdrojovým destinationDirectoryName záznamem do kořenového adresáře archivu.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP. Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Pokud má archivovaný soubor neplatný čas poslední změny, použije se první datum a čas představující ve formátu zip timestamp (půlnoc 1. ledna 1980).
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(String, String)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory v zadaném archivu zip do adresáře v systému souborů.
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)
Parametry
- sourceArchiveFileName
- String
Cesta k archivu, který se má extrahovat.
- destinationDirectoryName
- String
Cesta k adresáři, do kterého se mají umístit extrahované soubory zadané jako relativní nebo absolutní cesta. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
Výjimky
destinationDirectoryName nebo sourceArchiveFileName je Empty, obsahuje pouze prázdné znaky nebo obsahuje alespoň jeden neplatný znak.
destinationDirectoryName nebo sourceArchiveFileName je null.
Zadaná cesta přesahuje destinationDirectoryName maximální sourceArchiveFileName délku definovanou systémem.
Zadaná cesta je neplatná (například je na nemapované jednotce).
Název položky v archivu je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
Extrahování položky archivu by vytvořilo soubor, který je mimo adresář určený destinationDirectoryName. (K tomu může dojít například v případě, že název položky obsahuje nadřazené přístupové objekty adresáře.)
nebo
Položka archivu pro extrakci má stejný název jako položka, která již byla extrahována nebo existuje v destinationDirectoryName.
Volající nemá požadovaná oprávnění pro přístup k archivu nebo cílovému adresáři.
destinationDirectoryName nebo sourceArchiveFileName obsahuje neplatný formát.
sourceArchiveFileName nebyl nalezen.
Archiv určený není platným archivem sourceArchiveFileName zip.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Příklady
Tento příklad ukazuje, jak vytvořit a extrahovat archiv zip pomocí ZipFile třídy. Zkomprimuje obsah složky do archivu zip a extrahuje tento obsah do nové složky. Chcete-li použít ZipFile třídu, musíte odkazovat na System.IO.Compression.FileSystem sestavení v projektu.
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
Poznámky
Tato metoda vytvoří zadaný adresář a všechny podadresáře. Cílový adresář již neexistuje. Výjimky související s ověřováním cest v parametrech destinationDirectoryName nebo sourceArchiveFileName cest jsou vyvolány před extrakcí. V opačném případě, pokud dojde k chybě během extrakce, archiv zůstane částečně extrahován. Každý extrahovaný soubor má stejnou relativní cestu k adresáři určenému jeho zdrojovým destinationDirectoryName záznamem do kořenového adresáře archivu.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP.
Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(Stream, String)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory z archivu zip uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů.
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)
Parametry
- source
- Stream
Stream, ze kterého se má archiv zip extrahovat.
- destinationDirectoryName
- String
Cesta k adresáři, do kterého se mají umístit extrahované soubory zadané jako relativní nebo absolutní cesta. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
Výjimky
destinationDirectoryName je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
destinationDirectoryName nebo source je null.
Zadaná cesta destinationDirectoryName překračuje maximální délku definovanou systémem.
Zadaná cesta je neplatná (například je na nemapované jednotce).
Název položky v archivu je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
Extrahování položky archivu by vytvořilo soubor, který je mimo adresář určený destinationDirectoryName. (K tomu může dojít například v případě, že název položky obsahuje nadřazené přístupové objekty adresáře.)
nebo
Položka archivu pro extrakci má stejný název jako položka, která již byla extrahována nebo existuje v destinationDirectoryName.
Volající nemá požadovaná oprávnění pro přístup k archivu nebo cílovému adresáři.
destinationDirectoryName obsahuje neplatný formát.
Archiv obsažený ve streamu source není platný archiv zip.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Poznámky
Tato metoda vytvoří zadaný adresář a všechny podadresáře. Cílový adresář již neexistuje. Výjimky související s ověřováním cest v destinationDirectoryName archivu zip nebo souborů v archivu zip obsažené v parametrech source jsou vyvolány před extrahováním. V opačném případě, pokud dojde k chybě během extrakce, archiv zůstane částečně extrahován. Každý extrahovaný soubor má stejnou relativní cestu k adresáři určenému jeho zdrojovým destinationDirectoryName záznamem do kořenového adresáře archivu.
Pokud je položka v archivu ZIP symbolický odkaz, extrahuje se jako běžná složka, protože symbolické informace o odkazu se nezachovají ve formátu ZIP. Pokud destinationDirectoryName nebo některý z jeho nadřazených adresářů je již existující spojení nebo symbolický odkaz, zapíše se odkaz a extrahování se zapíše do konečné cílové složky.
Pokud má archivovaný soubor neplatný čas poslední změny, použije se první datum a čas představující ve formátu zip timestamp (půlnoc 1. ledna 1980).
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.
Platí pro
ExtractToDirectory(Stream, String, Encoding)
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
- Zdroj:
- ZipFile.Extract.cs
Extrahuje všechny soubory z archivu ZIP uloženého v zadaném datovém proudu a umístí je do zadaného cílového adresáře v systému souborů a použije kódování zadaného znaku pro názvy položek a komentáře.
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)
Parametry
- source
- Stream
Stream, ze kterého se má archiv zip extrahovat.
- destinationDirectoryName
- String
Cesta k adresáři, do kterého se mají umístit extrahované soubory zadané jako relativní nebo absolutní cesta. Relativní cesta se interpretuje jako relativní vzhledem k aktuálnímu pracovnímu adresáři.
- entryNameEncoding
- Encoding
Kódování, které se má použít při čtení nebo zápisu názvů položek a komentářů v tomto archivu. Zadejte hodnotu pro tento parametr pouze v případě, že je vyžadováno kódování pro interoperabilitu s nástroji a knihovnami zip archivu, které nepodporují kódování UTF-8 pro názvy položek nebo komentáře.
Výjimky
destinationDirectoryName je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
entryNameEncoding je nastavena na kódování Unicode jiné než UTF-8.
destinationDirectoryName nebo source je null.
Zadaná cesta destinationDirectoryName překračuje maximální délku definovanou systémem.
Zadaná cesta je neplatná (například je na nemapované jednotce).
Název položky v archivu je Empty, obsahuje pouze prázdné znaky nebo obsahuje aspoň jeden neplatný znak.
nebo
Extrahování položky archivu by vytvořilo soubor, který je mimo adresář určený destinationDirectoryName. (K tomu může dojít například v případě, že název položky obsahuje nadřazené přístupové objekty adresáře.)
nebo
Položka archivu pro extrakci má stejný název jako položka, která již byla extrahována nebo existuje v destinationDirectoryName.
Volající nemá požadovaná oprávnění pro přístup k archivu nebo cílovému adresáři.
destinationDirectoryName obsahuje neplatný formát.
Archiv obsažený ve streamu source není platný archiv zip.
nebo
Položka archivu nebyla nalezena nebo byla poškozena.
nebo
Položka archivu byla komprimována pomocí metody komprese, která není podporována.
Poznámky
Tato metoda vytvoří zadaný adresář a všechny podadresáře. Cílový adresář již neexistuje. Výjimky související s ověřováním cest v destinationDirectoryName archivu zip nebo souborů v archivu zip obsažené v parametrech source jsou vyvolány před extrahováním. V opačném případě, pokud dojde k chybě během extrakce, archiv zůstane částečně extrahován. Každý extrahovaný soubor má stejnou relativní cestu k adresáři určenému jeho zdrojovým destinationDirectoryName záznamem do kořenového adresáře archivu.
Pokud má archivovaný soubor neplatný čas poslední změny, použije se první datum a čas představující ve formátu zip timestamp (půlnoc 1. ledna 1980).
Výstraha
Tato metoda neomezuje celkovou nekomprimovanou velikost ani počet položek extrahovaných z archivu. Při zpracování archivů z nedůvěryhodných zdrojů iterujte položky ručně pomocí ZipArchivea ověřte, že celková nekomprimovaná velikost a počet položek jsou pro váš scénář v přijatelných mezích.