Språk

TarFile.ExtractToDirectoryAsync Metod

Definition

Överlagringar

Name Description
ExtractToDirectoryAsync(String, String, Boolean, CancellationToken)

Asynkront extraherar innehållet i en tjärfil till den angivna katalogen.

ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken)

Extraherar asynkront innehållet i en ström som representerar ett tjärarkiv till den angivna katalogen.

ExtractToDirectoryAsync(Stream, String, TarExtractOptions, CancellationToken)
ExtractToDirectoryAsync(String, String, TarExtractOptions, CancellationToken)

ExtractToDirectoryAsync(String, String, Boolean, CancellationToken)

Källa:
TarFile.cs
Källa:
TarFile.cs
Källa:
TarFile.cs
Källa:
TarFile.cs
Källa:
TarFile.cs

Asynkront extraherar innehållet i en tjärfil till den angivna katalogen.

public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceFileName, string destinationDirectoryName, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : string * string * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (sourceFileName As String, destinationDirectoryName As String, overwriteFiles As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task

Parametrar

sourceFileName
String

Sökvägen till tar-filen som ska extraheras.

destinationDirectoryName
String

Sökvägen till målkatalogen där filsystemposterna ska extraheras.

overwriteFiles
Boolean

true för att skriva över filer och kataloger i destinationDirectoryName; false för att undvika överskrivning och kasta om några filer eller kataloger hittas med befintliga namn.

cancellationToken
CancellationToken

Token som ska övervakas för annulleringsbegäranden. Standardvärdet är None.

Returer

En uppgift som representerar den asynkrona extraheringsåtgärden.

Undantag

sourceFileName eller destinationDirectoryName är null.

Katalogsökvägen destinationDirectoryName hittades inte.

Det sourceFileName går inte att hitta filsökvägen.

Behörigheterna är otillräckliga.

Om du extraherade en av tjärposterna skulle det ha resulterat i en fil utanför den angivna målkatalogen.

-eller-

sourceFileName eller destinationDirectoryName är tom.

.NET endast 11 och senare versioner: En posts kontrollsumma är ogiltig.

Ett I/O-undantag inträffade.

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Kommentarer

Om en symbolisk länk eller korsning i tjärarkivet resulterar i att en fil extraheras utanför angiven destinationDirectoryNamegenereras en IOException för att säkerställa att extrahering förblir inom samma katalog.

Om destinationDirectoryName eller någon av dess överordnade kataloger är en befintlig koppling eller symbolisk länk följs länken och extraheringsskrivningarna till den slutliga målmappen.

Filer av typen BlockDevice, CharacterDeviceeller Fifo kan bara extraheras i Unix-plattformar.

Utökade privilegier krävs för att extrahera en BlockDevice eller CharacterDevice till disk.

Den här metoden begränsar inte den totala extraherade storleken eller antalet poster som extraheras från arkivet. När du bearbetar arkiv från ej betrodda källor itererar du över posterna manuellt med hjälp av TarReaderoch kontrollerar att storleken och antalet poster ligger inom godkända gränser för ditt scenario.

Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av ExtractToDirectory(String, String, Boolean).

Gäller för

ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken)

Källa:
TarFile.cs
Källa:
TarFile.cs
Källa:
TarFile.cs
Källa:
TarFile.cs
Källa:
TarFile.cs

Extraherar asynkront innehållet i en ström som representerar ett tjärarkiv till den angivna katalogen.

public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : System.IO.Stream * string * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (source As Stream, destinationDirectoryName As String, overwriteFiles As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task

Parametrar

source
Stream

Strömmen som innehåller tjärarkivet.

destinationDirectoryName
String

Sökvägen till målkatalogen där filsystemposterna ska extraheras.

overwriteFiles
Boolean

true för att skriva över filer och kataloger i destinationDirectoryName; false för att undvika överskrivning och kasta om några filer eller kataloger hittas med befintliga namn.

cancellationToken
CancellationToken

Token som ska övervakas för annulleringsbegäranden. Standardvärdet är None.

Returer

En uppgift som representerar den asynkrona extraheringsåtgärden.

Undantag

source eller destinationDirectoryName är null.

Katalogsökvägen destinationDirectoryName hittades inte.

Behörigheterna är otillräckliga.

Om du extraherade en av tjärposterna skulle det ha resulterat i en fil utanför den angivna målkatalogen.

-eller-

destinationDirectoryName är tom.

-eller-

source stöder inte läsning.

.NET endast 11 och senare versioner: En posts kontrollsumma är ogiltig.

Ett I/O-undantag inträffade.

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Kommentarer

Om en symbolisk länk eller korsning i tjärarkivet resulterar i att en fil extraheras utanför angiven destinationDirectoryNamegenereras en IOException för att säkerställa att extrahering förblir inom samma katalog.

Om destinationDirectoryName eller någon av dess överordnade kataloger är en befintlig koppling eller symbolisk länk följs länken och extraheringsskrivningarna till den slutliga målmappen.

Filer av typen BlockDevice, CharacterDeviceeller Fifo kan bara extraheras i Unix-plattformar.

Utökade privilegier krävs för att extrahera en BlockDevice eller CharacterDevice till disk.

Den här metoden begränsar inte den totala extraherade storleken eller antalet poster som extraheras från arkivet. När du bearbetar arkiv från ej betrodda källor itererar du över posterna manuellt med hjälp av TarReaderoch kontrollerar att storleken och antalet poster ligger inom godkända gränser för ditt scenario.

Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av ExtractToDirectory(Stream, String, Boolean).

Gäller för

ExtractToDirectoryAsync(Stream, String, TarExtractOptions, CancellationToken)

Källa:
TarFile.cs
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Formats.Tar.TarExtractOptions options, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : System.IO.Stream * string * System.Formats.Tar.TarExtractOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (source As Stream, destinationDirectoryName As String, options As TarExtractOptions, Optional cancellationToken As CancellationToken = Nothing) As Task

Parametrar

source
Stream
destinationDirectoryName
String
cancellationToken
CancellationToken

Returer

Gäller för

ExtractToDirectoryAsync(String, String, TarExtractOptions, CancellationToken)

Källa:
TarFile.cs
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceFileName, string destinationDirectoryName, System.Formats.Tar.TarExtractOptions options, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : string * string * System.Formats.Tar.TarExtractOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (sourceFileName As String, destinationDirectoryName As String, options As TarExtractOptions, Optional cancellationToken As CancellationToken = Nothing) As Task

Parametrar

sourceFileName
String
destinationDirectoryName
String
cancellationToken
CancellationToken

Returer

Gäller för