Language

TarFile.ExtractToDirectoryAsync メソッド

定義

オーバーロード

Name 説明
ExtractToDirectoryAsync(String, String, Boolean, CancellationToken)

tar ファイルの内容を指定したディレクトリに非同期的に抽出します。

ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken)

tar アーカイブを表すストリームの内容を、指定されたディレクトリに非同期的に抽出します。

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

ExtractToDirectoryAsync(String, String, Boolean, CancellationToken)

ソース:
TarFile.cs
ソース:
TarFile.cs
ソース:
TarFile.cs
ソース:
TarFile.cs
ソース:
TarFile.cs

tar ファイルの内容を指定したディレクトリに非同期的に抽出します。

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

パラメーター

sourceFileName
String

抽出する tar ファイルのパス。

destinationDirectoryName
String

ファイル システム エントリを抽出する宛先ディレクトリのパス。 .NET 11 以前のバージョンでは、ディレクトリが既に存在している必要があります。 .NET 12 以降のバージョンでは、エントリの抽出時に必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

overwriteFiles
Boolean

true destinationDirectoryName内のファイルとディレクトリを上書きする場合はfalse。上書きを回避し、既存の名前を持つファイルまたはディレクトリが見つかった場合はスローします。

cancellationToken
CancellationToken

キャンセル要求を監視するトークン。 既定値は None です。

返品

非同期抽出操作を表すタスク。

例外

sourceFileName または destinationDirectoryName が null。

.NET 11 以前のバージョン: destinationDirectoryName ディレクトリが存在しません。

sourceFileName ファイル パスが見つかりません。

アクセス許可が不十分です。

tar エントリの 1 つを抽出すると、指定した宛先ディレクトリの外部にファイルが生成されます。

-又は-

sourceFileName または destinationDirectoryName が空です。

.NET 11 以降のバージョンのみ: エントリのチェックサムが無効です。

I/O 例外が発生しました。

キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。

注釈

Warning

このメソッドを使用して、信頼されていないアーカイブを抽出することはできません。 信頼されていないアーカイブを安全に抽出するために必要なサイズ制限、エントリ数の制限、またはその他のポリシーは適用されません。 信頼されていないソースからアーカイブを安全に抽出する方法の詳細については、「 zip アーカイブと tar アーカイブを使用するためのベスト プラクティス」を参照してください。

.NET 11 以前のバージョンでは、destinationDirectoryNameで指定されたディレクトリが既に存在している必要があります。 存在しない場合、アーカイブが空の場合でも、このメソッドは DirectoryNotFoundExceptionをスローします。

.NET 12 以降のバージョンでは、移行先ディレクトリは既に存在できます。 エントリが抽出されると、必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

tar アーカイブ内のシンボリック リンクまたはジャンクションにより、指定した destinationDirectoryNameの外部でファイルが抽出された場合、抽出が同じディレクトリ内に残ることを保証するために IOException がスローされます。

destinationDirectoryNameまたはその親ディレクトリのいずれかが既存のジャンクションまたはシンボリック リンクである場合、リンクがフォローされ、抽出によって最終的なターゲット フォルダーに書き込まれます。

BlockDevice、CharacterDevice、またはFifoの種類のファイルは、Unix プラットフォームでのみ抽出できます。

ディスクに BlockDevice または CharacterDevice を抽出するには、昇格が必要です。

このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 ExtractToDirectory(String, String, Boolean)によってスローされる例外を参照してください。

適用対象

ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken)

ソース:
TarFile.cs
ソース:
TarFile.cs
ソース:
TarFile.cs
ソース:
TarFile.cs
ソース:
TarFile.cs

tar アーカイブを表すストリームの内容を、指定されたディレクトリに非同期的に抽出します。

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

パラメーター

source
Stream

tar アーカイブを含むストリーム。

destinationDirectoryName
String

ファイル システム エントリを抽出する宛先ディレクトリのパス。 .NET 11 以前のバージョンでは、ディレクトリが既に存在している必要があります。 .NET 12 以降のバージョンでは、エントリの抽出時に必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

overwriteFiles
Boolean

true destinationDirectoryName内のファイルとディレクトリを上書きする場合はfalse。上書きを回避し、既存の名前を持つファイルまたはディレクトリが見つかった場合はスローします。

cancellationToken
CancellationToken

キャンセル要求を監視するトークン。 既定値は None です。

返品

非同期抽出操作を表すタスク。

例外

source または destinationDirectoryName が null。

.NET 11 以前のバージョン: destinationDirectoryName ディレクトリが存在しません。

アクセス許可が不十分です。

tar エントリの 1 つを抽出すると、指定した宛先ディレクトリの外部にファイルが生成されます。

-又は-

destinationDirectoryName が空です。

-又は-

source は読み取りをサポートしていません。

.NET 11 以降のバージョンのみ: エントリのチェックサムが無効です。

I/O 例外が発生しました。

キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。

注釈

Warning

このメソッドを使用して、信頼されていないアーカイブを抽出することはできません。 信頼されていないアーカイブを安全に抽出するために必要なサイズ制限、エントリ数の制限、またはその他のポリシーは適用されません。 信頼されていないソースからアーカイブを安全に抽出する方法の詳細については、「 zip アーカイブと tar アーカイブを使用するためのベスト プラクティス」を参照してください。

.NET 11 以前のバージョンでは、destinationDirectoryNameで指定されたディレクトリが既に存在している必要があります。 存在しない場合、アーカイブが空の場合でも、このメソッドは DirectoryNotFoundExceptionをスローします。

.NET 12 以降のバージョンでは、移行先ディレクトリは既に存在できます。 エントリが抽出されると、必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

tar アーカイブ内のシンボリック リンクまたはジャンクションにより、指定した destinationDirectoryNameの外部でファイルが抽出された場合、抽出が同じディレクトリ内に残ることを保証するために IOException がスローされます。

destinationDirectoryNameまたはその親ディレクトリのいずれかが既存のジャンクションまたはシンボリック リンクである場合、リンクがフォローされ、抽出によって最終的なターゲット フォルダーに書き込まれます。

BlockDevice、CharacterDevice、またはFifoの種類のファイルは、Unix プラットフォームでのみ抽出できます。

ディスクに BlockDevice または CharacterDevice を抽出するには、昇格が必要です。

このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 ExtractToDirectory(Stream, String, Boolean)によってスローされる例外を参照してください。

適用対象

ExtractToDirectoryAsync(Stream, String, TarExtractOptions, CancellationToken)

ソース:
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

パラメーター

source
Stream
destinationDirectoryName
String

抽出されたファイルを配置するディレクトリへのパス。 .NET 11 以前のバージョンでは、ディレクトリが既に存在している必要があります。 .NET 12 以降のバージョンでは、エントリの抽出時に必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

cancellationToken
CancellationToken

返品

例外

.NET 11 以前のバージョン: destinationDirectoryName ディレクトリが存在しません。

注釈

Warning

このメソッドを使用して、信頼されていないアーカイブを抽出することはできません。 信頼されていないアーカイブを安全に抽出するために必要なサイズ制限、エントリ数の制限、またはその他のポリシーは適用されません。 信頼されていないソースからアーカイブを安全に抽出する方法の詳細については、「 zip アーカイブと tar アーカイブを使用するためのベスト プラクティス」を参照してください。

.NET 11 以前のバージョンでは、destinationDirectoryNameで指定されたディレクトリが既に存在している必要があります。 存在しない場合、アーカイブが空の場合でも、このメソッドは DirectoryNotFoundExceptionをスローします。

.NET 12 以降のバージョンでは、移行先ディレクトリは既に存在できます。 エントリが抽出されると、必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

相対パスと絶対パスのどちらでも構いません。 相対パスは、現在の作業ディレクトリに対する相対パスとして解釈されます。

抽出中にエラーが発生した場合、アーカイブは部分的に抽出されたままになります。

OverwriteFilesをtrueに設定して、既存のファイルを上書きします。 既定値は false です。 HardLinkModeを使用して、ハード リンク エントリの抽出方法を制御します。

tar アーカイブ内のシンボリック リンクまたはジャンクションにより、指定した destinationDirectoryNameの外部でファイルが抽出された場合、抽出が同じディレクトリ内に残ることを保証するために IOException がスローされます。

destinationDirectoryNameまたはその親ディレクトリのいずれかが既存のジャンクションまたはシンボリック リンクである場合、リンクがフォローされ、抽出によって最終的なターゲット フォルダーに書き込まれます。

BlockDevice、CharacterDevice、またはFifoの種類のファイルは、Unix プラットフォームでのみ抽出できます。

ディスクに BlockDevice または CharacterDevice を抽出するには、昇格が必要です。

source ストリームは抽出後も開いたままです。

非同期抽出中に発生する例外は、返されたタスクに格納され、タスクが待機しているときにスローされます。

適用対象

ExtractToDirectoryAsync(String, String, TarExtractOptions, CancellationToken)

ソース:
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

パラメーター

sourceFileName
String
destinationDirectoryName
String

抽出されたファイルを配置するディレクトリへのパス。 .NET 11 以前のバージョンでは、ディレクトリが既に存在している必要があります。 .NET 12 以降のバージョンでは、エントリの抽出時に必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

cancellationToken
CancellationToken

返品

例外

.NET 11 以前のバージョン: destinationDirectoryName ディレクトリが存在しません。

注釈

Warning

このメソッドを使用して、信頼されていないアーカイブを抽出することはできません。 信頼されていないアーカイブを安全に抽出するために必要なサイズ制限、エントリ数の制限、またはその他のポリシーは適用されません。 信頼されていないソースからアーカイブを安全に抽出する方法の詳細については、「 zip アーカイブと tar アーカイブを使用するためのベスト プラクティス」を参照してください。

.NET 11 以前のバージョンでは、destinationDirectoryNameで指定されたディレクトリが既に存在している必要があります。 存在しない場合、アーカイブが空の場合でも、このメソッドは DirectoryNotFoundExceptionをスローします。

.NET 12 以降のバージョンでは、移行先ディレクトリは既に存在できます。 エントリが抽出されると、必要に応じて、不足している宛先ディレクトリと親ディレクトリが作成されます。 空のアーカイブでは、ディレクトリは作成されません。

相対パスと絶対パスのどちらでも構いません。 相対パスは、現在の作業ディレクトリに対する相対パスとして解釈されます。

抽出中にエラーが発生した場合、アーカイブは部分的に抽出されたままになります。

OverwriteFilesをtrueに設定して、既存のファイルを上書きします。 既定値は false です。 HardLinkModeを使用して、ハード リンク エントリの抽出方法を制御します。

tar アーカイブ内のシンボリック リンクまたはジャンクションにより、指定した destinationDirectoryNameの外部でファイルが抽出された場合、抽出が同じディレクトリ内に残ることを保証するために IOException がスローされます。

destinationDirectoryNameまたはその親ディレクトリのいずれかが既存のジャンクションまたはシンボリック リンクである場合、リンクがフォローされ、抽出によって最終的なターゲット フォルダーに書き込まれます。

BlockDevice、CharacterDevice、またはFifoの種類のファイルは、Unix プラットフォームでのみ抽出できます。

ディスクに BlockDevice または CharacterDevice を抽出するには、昇格が必要です。

非同期抽出中に発生する例外は、返されたタスクに格納され、タスクが待機しているときにスローされます。

適用対象