ZipFileExtensions.ExtractToDirectory Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| ExtractToDirectory(ZipArchive, String) |
Extraheert alle bestanden in het zip-archief naar een map in het bestandssysteem. |
| ExtractToDirectory(ZipArchive, String, Boolean) |
Hiermee worden alle bestanden in het archief geëxtraheerd naar een map in het bestandssysteem. |
ExtractToDirectory(ZipArchive, String)
Extraheert alle bestanden in het zip-archief naar een map in het bestandssysteem.
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)
Parameters
- source
- ZipArchive
Het zip-archief waaruit bestanden moeten worden geëxtraheerd.
- destinationDirectoryName
- String
Het pad naar de map waarin de geëxtraheerde bestanden moeten worden opgeslagen. U kunt een relatief of een absoluut pad opgeven. Een relatief pad wordt geïnterpreteerd als relatief ten opzichte van de huidige werkmap.
Uitzonderingen
destinationDirectoryName is Empty, bevat slechts witruimte of bevat ten minste één ongeldig teken.
destinationDirectoryName is null.
Het opgegeven pad overschrijdt de door het systeem gedefinieerde maximumlengte.
Het opgegeven pad is ongeldig (bijvoorbeeld op een niet-toegewezen station).
De naam van een vermelding in het archief is Empty, bevat slechts witruimte of bevat ten minste één ongeldig teken.
– of –
Als u een vermelding uit het archief extraheert, wordt er een bestand gemaakt dat zich buiten de map bevindt die is opgegeven door destinationDirectoryName. (Dit kan bijvoorbeeld gebeuren als de vermeldingsnaam bovenliggende adreslijsttoegangsors bevat.)
– of –
Twee of meer vermeldingen in het archief hebben dezelfde naam.
De aanroeper beschikt niet over de vereiste machtigingen om naar de doelmap te schrijven.
destinationDirectoryName bevat een ongeldige indeling.
Een archiefvermelding kan niet worden gevonden of is beschadigd.
– of –
Een archiefvermelding is gecomprimeerd met behulp van een compressiemethode die niet wordt ondersteund.
Voorbeelden
In het volgende voorbeeld ziet u hoe u een nieuwe vermelding maakt in een zip-archief van een bestaand bestand en hoe u het archief extraheert naar een nieuwe map.
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
Opmerkingen
Met deze methode maakt u de map die is opgegeven door destinationDirectoryName. Met de methode worden ook submappen gemaakt die de hiërarchie in het zip-archief weerspiegelen. Als er een fout optreedt tijdens het extraheren, blijft het archief gedeeltelijk geëxtraheerd. Elk uitgepakt bestand heeft hetzelfde relatieve pad naar de map die is destinationDirectoryName opgegeven als de bronvermelding, moet in de hoofdmap van het archief staan.
Van toepassing op
ExtractToDirectory(ZipArchive, String, Boolean)
Hiermee worden alle bestanden in het archief geëxtraheerd naar een map in het bestandssysteem.
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)
Parameters
- source
- ZipArchive
Het ZipArchive te extraheren.
- destinationDirectoryName
- String
Het pad naar de doelmap in het bestandssysteem. Het pad kan relatief of absoluut zijn. Een relatief pad wordt geïnterpreteerd als relatief ten opzichte van de huidige werkmap.
- overwriteFiles
- Boolean
true bestaande bestanden te overschrijven; false Anders.
Uitzonderingen
destinationDirectoryName is een tekenreeks met lengte nul, bevat alleen witruimte of bevat een of meer ongeldige tekens zoals gedefinieerd door InvalidPathChars.
destinationDirectoryName is null.
Het opgegeven pad, de bestandsnaam of beide overschrijden de door het systeem gedefinieerde maximumlengte.
Het opgegeven pad is ongeldig (bijvoorbeeld op een niet-toegewezen station).
De naam van een ZipArchiveEntry is nullengte, bevat alleen witruimte of bevat een of meer ongeldige tekens zoals gedefinieerd door InvalidPathChars.
– of –
Het extraheren van een ZipArchiveEntry bestand zou hebben geresulteerd in een doelbestand dat zich buiten destinationDirectoryName bevindt (bijvoorbeeld als de vermeldingsnaam bovenliggende directory-accessors bevat).
– of –
A ZipArchiveEntry heeft dezelfde naam als een al geëxtraheerde vermelding uit hetzelfde archief.
De beller heeft niet de vereiste machtiging.
destinationDirectoryName heeft een ongeldige indeling.
Er ZipArchiveEntry is geen gevonden of beschadigd.
– of –
Een ZipArchiveEntry is gecomprimeerd met behulp van een compressiemethode die niet wordt ondersteund.
Opmerkingen
De opgegeven map bestaat mogelijk al. Met deze methode worden de opgegeven map en alle submappen gemaakt, indien nodig.
Als er een fout optreedt tijdens het extraheren van het archief, blijft het archief gedeeltelijk geëxtraheerd.
Elke vermelding wordt geëxtraheerd, zodat het uitgepakte bestand hetzelfde relatieve pad destinationDirectoryName heeft als de vermelding in de hoofdmap van het archief.
Als een te archiveren bestand een ongeldige datum en tijd heeft die het laatst is gewijzigd, wordt de eerste datum en tijd in de indeling Zip-tijdstempel (middernacht op 1 januari 1980) gebruikt.