Språk

ZipFileExtensions.ExtractToDirectory Metod

Definition

Extraherar alla filer i arkivet till en katalog i filsystemet.

Överlagringar

Name Description
ExtractToDirectory(ZipArchive, String, ZipExtractionOptions)
ExtractToDirectory(ZipArchive, String, Boolean)

Extraherar alla filer i arkivet till en katalog i filsystemet.

ExtractToDirectory(ZipArchive, String)

Extraherar alla filer i zip-arkivet till en katalog i filsystemet.

ExtractToDirectory(ZipArchive, String, ZipExtractionOptions)

Källa:
ZipFileExtensions.ZipArchive.Extract.cs
public:
[System::Runtime::CompilerServices::Extension]
 static void ExtractToDirectory(System::IO::Compression::ZipArchive ^ source, System::String ^ destinationDirectoryName, System::IO::Compression::ZipExtractionOptions ^ options);
public static void ExtractToDirectory(this System.IO.Compression.ZipArchive source, string destinationDirectoryName, System.IO.Compression.ZipExtractionOptions options);
static member ExtractToDirectory : System.IO.Compression.ZipArchive * string * System.IO.Compression.ZipExtractionOptions -> unit
<Extension()>
Public Sub ExtractToDirectory (source As ZipArchive, destinationDirectoryName As String, options As ZipExtractionOptions)

Parametrar

source
ZipArchive
destinationDirectoryName
String

Sökvägen till katalogen där de extraherade filerna ska lagras. Katalogen kan redan finnas. Saknade kataloger skapas efter behov när poster extraheras.

Kommentarer

Varning

Den här metoden får inte användas för att extrahera ej betrodda arkiv. Den tillämpar inga storleksgränser, gränser för antal inmatningar eller andra principer som behövs för säker extrahering av ej betrodda arkiv. Mer information om hur du extraherar arkiv från ej betrodda källor på ett säkert sätt finns i Metodtips för att använda zip- och tjärarkiv.

Katalogen som anges av destinationDirectoryName kan redan finnas. Den här metoden skapar målkatalogen, dess saknade överordnade kataloger och underkataloger efter behov när poster extraheras. Om arkivet är tomt skapar inte den här metoden målkatalogen.

Varje extraherad fil har samma relativa sökväg till destinationDirectoryName som källposten har till roten i arkivet.

Parametern destinationDirectoryName accepterar relativa och absoluta sökvägar. En relativ sökväg tolkas som relativ till den aktuella arbetskatalogen.

Om ett fel uppstår under extraheringen förblir arkivet delvis extraherat.

Ange OverwriteFiles till för att true skriva över befintliga filer. Standardvärdet är false, vilket gör att extrahering genererar en IOException om det redan finns en fil som ska extraheras.

Använd Password för att ange lösenordet för krypterade poster.

EntryNameEncoding används inte av den här överlagringen. Postnamn och kommentarer avkodas med den kodning som angavs när arkivet source öppnades.

Symboliska länkar i arkivet återskapas inte som symboliska länkar. Om destinationDirectoryName eller någon av dess överordnade kataloger är en befintlig koppling eller symbolisk länk följs länken och extraheringsskrivningar till den slutliga målmappen.

Gäller för

ExtractToDirectory(ZipArchive, String, Boolean)

Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs

Extraherar alla filer i arkivet till en katalog i filsystemet.

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)

Parametrar

source
ZipArchive

Att ZipArchive extrahera.

destinationDirectoryName
String

Sökvägen till målkatalogen i filsystemet. Sökvägen kan vara relativ eller absolut. En relativ sökväg tolkas som relativ till den aktuella arbetskatalogen. Katalogen kan redan finnas. Saknade kataloger skapas efter behov när poster extraheras.

overwriteFiles
Boolean

true för att skriva över befintliga filer. false Annars.

Undantag

destinationDirectoryName är en sträng med noll längd, innehåller endast blanksteg eller innehåller ett eller flera ogiltiga tecken som definieras av InvalidPathChars.

destinationDirectoryName är null.

Den angivna sökvägen, filnamnet eller båda överskrider den systemdefinierade maximala längden.

Den angivna sökvägen är ogiltig (den finns till exempel på en ommappad enhet).

Namnet på en ZipArchiveEntry är noll längd, innehåller endast blanksteg eller innehåller ett eller flera ogiltiga tecken enligt definitionen av InvalidPathChars.

-or-

Att extrahera en ZipArchiveEntry skulle ha resulterat i en målfil som ligger utanför destinationDirectoryName (till exempel om postnamnet innehåller överordnade katalogåtkomster).

-or-

A ZipArchiveEntry har samma namn som en redan extraherad post från samma arkiv.

Anroparen har inte den behörighet som krävs.

destinationDirectoryName är i ett ogiltigt format.

Det ZipArchiveEntry gick inte att hitta eller var skadad.

-or-

A ZipArchiveEntry har komprimerats med en komprimeringsmetod som inte stöds.

Kommentarer

Varning

Den här metoden får inte användas för att extrahera ej betrodda arkiv. Den tillämpar inga storleksgränser, gränser för antal inmatningar eller andra principer som behövs för säker extrahering av ej betrodda arkiv. Mer information om hur du extraherar arkiv från ej betrodda källor på ett säkert sätt finns i Metodtips för att använda zip- och tjärarkiv.

Katalogen som anges av destinationDirectoryName kan redan finnas. Den här metoden skapar målkatalogen, dess saknade överordnade kataloger och underkataloger efter behov när poster extraheras. Om arkivet är tomt skapar inte den här metoden målkatalogen.

Om det uppstår ett fel när arkivet extraheras förblir arkivet delvis extraherat.

Varje post extraheras så att den extraherade filen har samma relativa sökväg till destinationDirectoryName som posten har till roten i arkivet.

Om en fil som ska arkiveras har en ogiltig senast ändrad tid används det första datum och den tid som visas i zip-tidsstämpelformatet (midnatt den 1 januari 1980).

Gäller för

ExtractToDirectory(ZipArchive, String)

Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs
Källa:
ZipFileExtensions.ZipArchive.Extract.cs

Extraherar alla filer i zip-arkivet till en katalog i filsystemet.

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)

Parametrar

source
ZipArchive

Zip-arkivet som du vill extrahera filer från.

destinationDirectoryName
String

Sökvägen till katalogen som de extraherade filerna ska lagras i. Du kan ange antingen en relativ eller en absolut sökväg. En relativ sökväg tolkas som relativ till den aktuella arbetskatalogen. Katalogen kan redan finnas. Saknade kataloger skapas efter behov när poster extraheras.

Undantag

destinationDirectoryName är Empty, innehåller endast tomt utrymme eller innehåller minst ett ogiltigt tecken.

destinationDirectoryName är null.

Den angivna sökvägen överskrider den systemdefinierade maximala längden.

Den angivna sökvägen är ogiltig (den finns till exempel på en ommappad enhet).

Namnet på en post i arkivet är Empty, innehåller endast tomt utrymme eller innehåller minst ett ogiltigt tecken.

-or-

Om du extraherar en post från arkivet skapas en fil som ligger utanför den katalog som anges av destinationDirectoryName. (Detta kan till exempel inträffa om postnamnet innehåller överordnade katalogåtkomster.)

-or-

Två eller flera poster i arkivet har samma namn.

Anroparen har inte den behörighet som krävs för att skriva till målkatalogen.

destinationDirectoryName innehåller ett ogiltigt format.

Det går inte att hitta en arkivpost eller är skadad.

-or-

En arkivpost komprimerades med hjälp av en komprimeringsmetod som inte stöds.

Exempel

I följande exempel visas hur du skapar en ny post i ett zip-arkiv från en befintlig fil och extraherar arkivet till en ny katalog.

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

Kommentarer

Varning

Den här metoden får inte användas för att extrahera ej betrodda arkiv. Den tillämpar inga storleksgränser, gränser för antal inmatningar eller andra principer som behövs för säker extrahering av ej betrodda arkiv. Mer information om hur du extraherar arkiv från ej betrodda källor på ett säkert sätt finns i Metodtips för att använda zip- och tjärarkiv.

Katalogen som anges av destinationDirectoryName kan redan finnas. Den här metoden skapar målkatalogen, dess saknade överordnade kataloger och underkataloger efter behov när poster extraheras. Om arkivet är tomt skapar inte den här metoden målkatalogen.

Om ett fel uppstår under extraheringen förblir arkivet delvis extraherat. Varje extraherad fil har samma relativa sökväg till den katalog som anges av destinationDirectoryName som källposten har till roten i arkivet.

Gäller för