ZipFile.ExtractToDirectoryAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos.
Sobrecargas
| Nome | Description |
|---|---|
| ExtractToDirectoryAsync(String, String, Encoding, Boolean, CancellationToken) |
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. O diretório especificado já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas. Se houver um erro ao extrair o arquivo morto, o arquivo permanecerá parcialmente extraído. Cada entrada será extraída de modo que o arquivo extraído tenha o mesmo caminho relativo para o destinationDirectoryName que a entrada tem para o arquivo morto. O caminho tem permissão para especificar informações de caminho relativas ou absolutas. As informações de caminho relativo são interpretadas como relativas ao diretório de trabalho atual. Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, o primeiro datetime representável no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) será usado. |
| ExtractToDirectoryAsync(Stream, String, Encoding, Boolean, CancellationToken) |
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos, usa a codificação de caracteres especificada para nomes de entrada e, opcionalmente, permite escolher se os arquivos no diretório de destino devem ser substituídos. |
| ExtractToDirectoryAsync(String, String, Encoding, CancellationToken) |
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| ExtractToDirectoryAsync(String, String, ZipExtractionOptions, CancellationToken) | |
| ExtractToDirectoryAsync(String, String, Boolean, CancellationToken) |
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| ExtractToDirectoryAsync(Stream, String, ZipExtractionOptions, CancellationToken) | |
| ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken) |
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos e, opcionalmente, permite escolher se os arquivos no diretório de destino devem ser substituídos. |
| ExtractToDirectoryAsync(String, String, CancellationToken) |
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| ExtractToDirectoryAsync(Stream, String, CancellationToken) |
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos. |
| ExtractToDirectoryAsync(Stream, String, Encoding, CancellationToken) |
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos e usa a codificação de caracteres especificada para nomes de entrada. |
ExtractToDirectoryAsync(String, String, Encoding, Boolean, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos.
O diretório especificado já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
Se houver um erro ao extrair o arquivo morto, o arquivo permanecerá parcialmente extraído. Cada entrada será extraída de modo que o arquivo extraído tenha o mesmo caminho relativo para o destinationDirectoryName que a entrada tem para o arquivo morto. O caminho tem permissão para especificar informações de caminho relativas ou absolutas. As informações de caminho relativo são interpretadas como relativas ao diretório de trabalho atual. Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, o primeiro datetime representável no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) será usado.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : string * string * System.Text.Encoding * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (sourceArchiveFileName As String, destinationDirectoryName As String, entryNameEncoding As Encoding, overwriteFiles As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- sourceArchiveFileName
- String
O caminho para o arquivo morto no sistema de arquivos que deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- entryNameEncoding
- Encoding
A codificação a ser usada ao ler ou gravar nomes de entrada e comentários neste ZipArchive.
- overwriteFiles
- Boolean
true para substituir arquivos; false Caso contrário.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
sourceArchiveFileName ou destinationDirectoryName é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
sourceArchiveFileName ou destinationDirectoryName é null.
sourceArchiveFileName ou destinationDirectoryName especifica um caminho, um nome de arquivo ou ambos que excedem o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ter menos de 248 caracteres e os nomes de arquivo devem ter menos de 260 caracteres.
O caminho especificado ou sourceArchiveFileNamedestinationDirectoryName inválido (por exemplo, ele está em uma unidade não mapeada).
Ocorreu um erro de E/S.
- ou -
O nome de uma entrada de arquivo morto tem comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
- ou -
A extração de uma entrada de arquivo morto resultaria em um destino de arquivo fora do diretório de destino (por exemplo, devido aos acessadores de diretório pai).
- ou -
Uma entrada de arquivo morto tem o mesmo nome de uma entrada já extraída do mesmo arquivo.
O chamador não tem a permissão necessária.
sourceArchiveFileName ou destinationDirectoryName está em um formato inválido.
sourceArchiveFileName não foi encontrado.
O arquivo especificado por sourceArchiveFileName não é um ZipArchive válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Se entryNameEncoding for definido como um valor diferente null, os nomes de entrada e os comentários serão decodificados de acordo com as seguintes regras:
- Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho do arquivo local não está definido, use o especificado
entryNameEncodingpara decodificar o nome de entrada e o comentário. - Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho do arquivo local está definido, use UTF-8 (
Encoding.UTF8) para decodificar o nome de entrada e o comentário.
Se entryNameEncoding estiver definido como null, os nomes de entrada e os comentários serão decodificados de acordo com as seguintes regras:
- Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho de arquivo local não está definido, use a página de código padrão do sistema atual (
Encoding.Default) para decodificar o nome de entrada e o comentário. - Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho do arquivo local está definido, use UTF-8 (
Encoding.UTF8) para decodificar o nome de entrada e o comentário.
Codificações Unicode diferentes de UTF-8 não podem ser usadas, entryNameEncodingcaso contrário, uma ArgumentException é gerada.
Aplica-se a
ExtractToDirectoryAsync(Stream, String, Encoding, Boolean, CancellationToken)
- Origem:
- ZipFile.Create.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos, usa a codificação de caracteres especificada para nomes de entrada e, opcionalmente, permite escolher se os arquivos no diretório de destino devem ser substituídos.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, bool overwriteFiles, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : System.IO.Stream * string * System.Text.Encoding * bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (source As Stream, destinationDirectoryName As String, entryNameEncoding As Encoding, overwriteFiles As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- source
- Stream
O fluxo do qual o arquivo zip deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- entryNameEncoding
- Encoding
A codificação a ser usada ao ler ou gravar nomes de entrada e comentários neste arquivo morto. Especifique um valor para esse parâmetro somente quando uma codificação for necessária para interoperabilidade com ferramentas de arquivo zip e bibliotecas que não dão suporte à codificação UTF-8 para nomes de entrada ou comentários.
- overwriteFiles
- Boolean
true para substituir arquivos; false Caso contrário.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
destinationDirectoryName é Empty, contém apenas espaço em branco ou contém pelo menos um caractere inválido.
- ou -
entryNameEncoding é definido como uma codificação Unicode diferente de UTF-8.
destinationDirectoryName ou source é null.
O caminho destinationDirectoryName especificado excede o comprimento máximo definido pelo sistema.
O caminho especificado é inválido (por exemplo, ele está em uma unidade não mapeada).
O nome de uma entrada no arquivo morto contém Emptyapenas espaço em branco ou contém pelo menos um caractere inválido.
- ou -
Extrair uma entrada de arquivo morto criaria um arquivo fora do diretório especificado por destinationDirectoryName. (Por exemplo, isso pode acontecer se o nome da entrada contiver acessadores de diretório pai.)
- ou -
overwriteFiles é false e uma entrada de arquivo morto a ser extraída tem o mesmo nome de uma entrada que já foi extraída ou que existe em destinationDirectoryName.
O chamador não tem a permissão necessária para acessar o arquivo morto ou o diretório de destino.
destinationDirectoryName contém um formato inválido.
O arquivo morto contido no source fluxo não é um arquivo zip válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Exceções relacionadas à validação dos caminhos nos destinationDirectoryName arquivos no arquivo zip contido nos source parâmetros são geradas antes da extração. Caso contrário, se ocorrer um erro durante a extração, o arquivo permanecerá parcialmente extraído. Cada arquivo extraído tem o mesmo caminho relativo para o diretório especificado pela destinationDirectoryName entrada de origem para a raiz do arquivo morto.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.
Aplica-se a
ExtractToDirectoryAsync(String, String, Encoding, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : string * string * System.Text.Encoding * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (sourceArchiveFileName As String, destinationDirectoryName As String, entryNameEncoding As Encoding, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- sourceArchiveFileName
- String
O caminho para o arquivo morto no sistema de arquivos que deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no sistema de arquivos. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- entryNameEncoding
- Encoding
A codificação a ser usada ao ler ou gravar nomes de entrada e comentários neste ZipArchive.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
sourceArchiveFileName ou destinationDirectoryName é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
sourceArchiveFileName ou destinationDirectoryName é null.
sourceArchiveFileName ou destinationDirectoryName especifica um caminho, um nome de arquivo ou ambos que excedem o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ter menos de 248 caracteres e os nomes de arquivo devem ter menos de 260 caracteres.
O caminho especificado ou sourceArchiveFileNamedestinationDirectoryName inválido (por exemplo, ele está em uma unidade não mapeada).
Ocorreu um erro de E/S.
- ou -
O nome de uma entrada de arquivo morto tem comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
- ou -
A extração de uma entrada de arquivo morto resultaria em um destino de arquivo fora do diretório de destino (por exemplo, devido aos acessadores de diretório pai).
- ou -
Uma entrada de arquivo morto tem o mesmo nome de uma entrada já extraída do mesmo arquivo.
O chamador não tem a permissão necessária.
sourceArchiveFileName ou destinationDirectoryName está em um formato inválido.
sourceArchiveFileName não foi encontrado.
O arquivo especificado por sourceArchiveFileName não é um ZipArchive válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Se houver um erro ao extrair o arquivo morto, o arquivo permanecerá parcialmente extraído. Cada entrada é extraída de modo que o arquivo extraído tenha o mesmo caminho relativo para o destinationDirectoryName que a entrada tem para o arquivo morto. O caminho aceita informações de caminho relativas ou absolutas; os caminhos relativos são interpretados como relativos ao diretório de trabalho atual.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.
Se entryNameEncoding for definido como um valor diferente null, os nomes de entrada e os comentários serão decodificados de acordo com as seguintes regras:
- Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho do arquivo local não está definido, use o especificado
entryNameEncodingpara decodificar o nome de entrada e o comentário. - Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho do arquivo local está definido, use UTF-8 (
Encoding.UTF8) para decodificar o nome de entrada e o comentário.
Se entryNameEncoding estiver definido como null, os nomes de entrada e os comentários serão decodificados de acordo com as seguintes regras:
- Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho de arquivo local não está definido, use a página de código padrão do sistema atual (
Encoding.Default) para decodificar o nome de entrada e o comentário. - Para entradas em que o sinalizador de codificação de idioma (EFS) no sinalizador de bits de finalidade geral do cabeçalho do arquivo local está definido, use UTF-8 (
Encoding.UTF8) para decodificar o nome de entrada e o comentário.
Codificações Unicode diferentes de UTF-8 não podem ser usadas, entryNameEncodingcaso contrário, uma ArgumentException é gerada.
Aplica-se a
ExtractToDirectoryAsync(String, String, ZipExtractionOptions, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.IO.Compression.ZipExtractionOptions options, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : string * string * System.IO.Compression.ZipExtractionOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (sourceArchiveFileName As String, destinationDirectoryName As String, options As ZipExtractionOptions, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- sourceArchiveFileName
- String
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- options
- ZipExtractionOptions
- cancellationToken
- CancellationToken
Retornos
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Cada arquivo extraído tem o mesmo caminho relativo para destinationDirectoryName o qual sua entrada de origem tem para a raiz do arquivo morto.
Os sourceArchiveFileName parâmetros e destinationDirectoryName os parâmetros aceitam caminhos relativos e absolutos. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual.
Se ocorrer um erro durante a extração, o arquivo morto permanecerá parcialmente extraído.
Definido OverwriteFiles para true substituir arquivos existentes. O padrão é false, o que faz com que a extração gere um IOException arquivo se já existir um arquivo a ser extraído.
Use Password para fornecer a senha para entradas criptografadas.
Use EntryNameEncoding para especificar a codificação para nomes de entrada e comentários ao abrir o arquivo morto. Para obter detalhes sobre como essa codificação é usada, consulte ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding).
Links simbólicos no arquivo morto não são recriados como links simbólicos. Se destinationDirectoryName ou qualquer um de seus diretórios pai for uma junção pré-existente ou um link simbólico, o link será seguido e a extração será gravada na pasta de destino final.
As exceções que ocorrem durante a extração assíncrona são armazenadas na tarefa retornada e são geradas quando a tarefa é aguardada.
Aplica-se a
ExtractToDirectoryAsync(String, String, Boolean, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, 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 (sourceArchiveFileName As String, destinationDirectoryName As String, overwriteFiles As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- sourceArchiveFileName
- String
O caminho para o arquivo morto no sistema de arquivos que deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- overwriteFiles
- Boolean
true para substituir arquivos; false Caso contrário.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
sourceArchiveFileName ou destinationDirectoryName é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
sourceArchiveFileName ou destinationDirectoryName é null.
sourceArchiveFileName ou destinationDirectoryName especifica um caminho, um nome de arquivo ou ambos que excedem o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ter menos de 248 caracteres e os nomes de arquivo devem ter menos de 260 caracteres.
O caminho especificado ou sourceArchiveFileNamedestinationDirectoryName inválido (por exemplo, ele está em uma unidade não mapeada).
Ocorreu um erro de E/S.
- ou -
O nome de uma entrada de arquivo morto tem comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
- ou -
A extração de uma entrada de arquivo morto resultaria em um destino de arquivo fora do diretório de destino (por exemplo, devido aos acessadores de diretório pai).
- ou -
Uma entrada de arquivo morto tem o mesmo nome de uma entrada já extraída do mesmo arquivo.
O chamador não tem a permissão necessária.
sourceArchiveFileName ou destinationDirectoryName está em um formato inválido.
sourceArchiveFileName não foi encontrado.
sourceArchiveFileName não é um ZipArchive válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Se houver um erro ao extrair o arquivo morto, o arquivo permanecerá parcialmente extraído. Cada entrada é extraída de modo que o arquivo extraído tenha o mesmo caminho relativo para o destinationDirectoryName que a entrada tem para o arquivo morto. O caminho aceita informações de caminho relativas ou absolutas; os caminhos relativos são interpretados como relativos ao diretório de trabalho atual.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.
Aplica-se a
ExtractToDirectoryAsync(Stream, String, ZipExtractionOptions, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.IO.Compression.ZipExtractionOptions options, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : System.IO.Stream * string * System.IO.Compression.ZipExtractionOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (source As Stream, destinationDirectoryName As String, options As ZipExtractionOptions, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- source
- Stream
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- options
- ZipExtractionOptions
- cancellationToken
- CancellationToken
Retornos
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Cada arquivo extraído tem o mesmo caminho relativo para destinationDirectoryName o qual sua entrada de origem tem para a raiz do arquivo morto.
O destinationDirectoryName parâmetro aceita caminhos relativos e absolutos. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual.
Se ocorrer um erro durante a extração, o arquivo morto permanecerá parcialmente extraído.
Definido OverwriteFiles para true substituir arquivos existentes. O padrão é false, o que faz com que a extração gere um IOException arquivo se já existir um arquivo a ser extraído.
Use Password para fornecer a senha para entradas criptografadas.
Use EntryNameEncoding para especificar a codificação para nomes de entrada e comentários ao abrir o arquivo morto. Para obter detalhes sobre como essa codificação é usada, consulte ZipArchive(Stream, ZipArchiveMode, Boolean, Encoding).
Links simbólicos no arquivo morto não são recriados como links simbólicos. Se destinationDirectoryName ou qualquer um de seus diretórios pai for uma junção pré-existente ou um link simbólico, o link será seguido e a extração será gravada na pasta de destino final.
O source fluxo é deixado aberto após a extração.
As exceções que ocorrem durante a extração assíncrona são armazenadas na tarefa retornada e são geradas quando a tarefa é aguardada.
Aplica-se a
ExtractToDirectoryAsync(Stream, String, Boolean, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos e, opcionalmente, permite escolher se os arquivos no diretório de destino devem ser substituídos.
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
Parâmetros
- source
- Stream
O fluxo do qual o arquivo zip deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- overwriteFiles
- Boolean
true para substituir arquivos; false Caso contrário.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
destinationDirectoryName é Empty, contém apenas espaço em branco ou contém pelo menos um caractere inválido.
destinationDirectoryName ou source é null.
O caminho destinationDirectoryName especificado excede o comprimento máximo definido pelo sistema.
O caminho especificado é inválido (por exemplo, ele está em uma unidade não mapeada).
O nome de uma entrada no arquivo morto contém Emptyapenas espaço em branco ou contém pelo menos um caractere inválido.
- ou -
Extrair uma entrada de arquivo morto criaria um arquivo fora do diretório especificado por destinationDirectoryName. (Por exemplo, isso pode acontecer se o nome da entrada contiver acessadores de diretório pai.)
- ou -
overwriteFiles é false e uma entrada de arquivo morto a ser extraída tem o mesmo nome de uma entrada que já foi extraída ou que existe em destinationDirectoryName.
O chamador não tem a permissão necessária para acessar o arquivo morto ou o diretório de destino.
destinationDirectoryName contém um formato inválido.
O arquivo morto contido no source fluxo não é um arquivo zip válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Exceções relacionadas à validação dos caminhos nos destinationDirectoryName arquivos no arquivo zip contido nos source parâmetros são geradas antes da extração. Caso contrário, se ocorrer um erro durante a extração, o arquivo permanecerá parcialmente extraído. Cada arquivo extraído tem o mesmo caminho relativo para o diretório especificado pela destinationDirectoryName entrada de origem para a raiz do arquivo morto.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.
Aplica-se a
ExtractToDirectoryAsync(String, String, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(string sourceArchiveFileName, string destinationDirectoryName, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : string * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (sourceArchiveFileName As String, destinationDirectoryName As String, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- sourceArchiveFileName
- String
O caminho para o arquivo morto no sistema de arquivos que deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
sourceArchiveFileName ou destinationDirectoryName é uma cadeia de caracteres de comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
sourceArchiveFileName ou destinationDirectoryName é null.
sourceArchiveFileName ou destinationDirectoryName especifica um caminho, um nome de arquivo ou ambos que excedem o comprimento máximo definido pelo sistema. Por exemplo, em plataformas baseadas no Windows, os caminhos devem ter menos de 248 caracteres e os nomes de arquivo devem ter menos de 260 caracteres.
O caminho especificado ou sourceArchiveFileNamedestinationDirectoryName inválido (por exemplo, ele está em uma unidade não mapeada).
Ocorreu um erro de E/S.
- ou -
O nome de uma entrada de arquivo morto tem comprimento zero, contém apenas espaço em branco ou contém um ou mais caracteres inválidos, conforme definido por InvalidPathChars.
- ou -
A extração de uma entrada de arquivo morto resultaria em um destino de arquivo fora do diretório de destino (por exemplo, devido aos acessadores de diretório pai).
- ou -
Uma entrada de arquivo morto tem o mesmo nome de uma entrada já extraída do mesmo arquivo.
O chamador não tem a permissão necessária.
sourceArchiveFileName ou destinationDirectoryName está em um formato inválido.
sourceArchiveFileName não foi encontrado.
O arquivo especificado por sourceArchiveFileName não é um ZipArchive válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Se houver um erro ao extrair o arquivo morto, o arquivo permanecerá parcialmente extraído. Cada entrada é extraída de modo que o arquivo extraído tenha o mesmo caminho relativo para o destinationDirectoryName que a entrada tem para o arquivo morto. O caminho aceita informações de caminho relativas ou absolutas; os caminhos relativos são interpretados como relativos ao diretório de trabalho atual.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.
Aplica-se a
ExtractToDirectoryAsync(Stream, String, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : System.IO.Stream * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (source As Stream, destinationDirectoryName As String, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- source
- Stream
O fluxo do qual o arquivo zip deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
destinationDirectoryName é Empty, contém apenas espaço em branco ou contém pelo menos um caractere inválido.
destinationDirectoryName ou source é null.
O caminho destinationDirectoryName especificado excede o comprimento máximo definido pelo sistema.
O caminho especificado é inválido (por exemplo, ele está em uma unidade não mapeada).
O nome de uma entrada no arquivo morto contém Emptyapenas espaço em branco ou contém pelo menos um caractere inválido.
- ou -
Extrair uma entrada de arquivo morto criaria um arquivo fora do diretório especificado por destinationDirectoryName. (Por exemplo, isso pode acontecer se o nome da entrada contiver acessadores de diretório pai.)
- ou -
Uma entrada de arquivo morto a ser extraída tem o mesmo nome de uma entrada que já foi extraída ou que existe em destinationDirectoryName.
O chamador não tem a permissão necessária para acessar o arquivo morto ou o diretório de destino.
destinationDirectoryName contém um formato inválido.
O arquivo morto contido no source fluxo não é um arquivo zip válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Exceções relacionadas à validação dos caminhos nos destinationDirectoryName arquivos no arquivo zip contido nos source parâmetros são geradas antes da extração. Caso contrário, se ocorrer um erro durante a extração, o arquivo permanecerá parcialmente extraído. Cada arquivo extraído tem o mesmo caminho relativo para o diretório especificado pela destinationDirectoryName entrada de origem para a raiz do arquivo morto.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.
Aplica-se a
ExtractToDirectoryAsync(Stream, String, Encoding, CancellationToken)
- Origem:
- ZipFile.Extract.Async.cs
- Origem:
- ZipFile.Extract.Async.cs
Extrai de forma assíncrona todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos e usa a codificação de caracteres especificada para nomes de entrada.
public static System.Threading.Tasks.Task ExtractToDirectoryAsync(System.IO.Stream source, string destinationDirectoryName, System.Text.Encoding? entryNameEncoding, System.Threading.CancellationToken cancellationToken = default);
static member ExtractToDirectoryAsync : System.IO.Stream * string * System.Text.Encoding * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Shared Function ExtractToDirectoryAsync (source As Stream, destinationDirectoryName As String, entryNameEncoding As Encoding, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- source
- Stream
O fluxo do qual o arquivo zip deve ser extraído.
- destinationDirectoryName
- String
O caminho para o diretório no qual colocar os arquivos extraídos, especificados como um caminho relativo ou absoluto. Um caminho relativo é interpretado como relativo ao diretório de trabalho atual. O diretório já pode existir. Os diretórios ausentes são criados conforme necessário ao extrair entradas.
- entryNameEncoding
- Encoding
A codificação a ser usada ao ler ou gravar nomes de entrada e comentários neste arquivo morto. Especifique um valor para esse parâmetro somente quando uma codificação for necessária para interoperabilidade com ferramentas de arquivo zip e bibliotecas que não dão suporte à codificação UTF-8 para nomes de entrada ou comentários.
- cancellationToken
- CancellationToken
O token de cancelamento a ser monitorado para solicitações de cancelamento.
Retornos
Exceções
destinationDirectoryName é Empty, contém apenas espaço em branco ou contém pelo menos um caractere inválido.
- ou -
entryNameEncoding é definido como uma codificação Unicode diferente de UTF-8.
destinationDirectoryName ou source é null.
O caminho destinationDirectoryName especificado excede o comprimento máximo definido pelo sistema.
O caminho especificado é inválido (por exemplo, ele está em uma unidade não mapeada).
O nome de uma entrada no arquivo morto contém Emptyapenas espaço em branco ou contém pelo menos um caractere inválido.
- ou -
Extrair uma entrada de arquivo morto criaria um arquivo fora do diretório especificado por destinationDirectoryName. (Por exemplo, isso pode acontecer se o nome da entrada contiver acessadores de diretório pai.)
- ou -
Uma entrada de arquivo morto a ser extraída tem o mesmo nome de uma entrada que já foi extraída ou que existe em destinationDirectoryName.
O chamador não tem a permissão necessária para acessar o arquivo morto ou o diretório de destino.
destinationDirectoryName contém um formato inválido.
O arquivo morto contido no source fluxo não é um arquivo zip válido.
- ou -
Uma entrada de arquivo morto não foi encontrada ou corrompida.
- ou -
Uma entrada de arquivo morto foi compactada usando um método de compactação que não tem suporte.
Uma operação assíncrona é cancelada.
Comentários
Warning
Esse método não deve ser usado para extrair arquivos não confiáveis. Ele não impõe limites de tamanho, limites de contagem de entradas ou outras políticas necessárias para extração segura de arquivos não confiáveis. Para obter mais informações sobre como extrair arquivos com segurança de fontes não confiáveis, consulte As práticas recomendadas para usar arquivos zip e tar.
O diretório especificado por destinationDirectoryName ele já pode existir. Esse método cria o diretório de destino, seus diretórios pai ausentes e subdiretórios conforme necessário ao extrair entradas. Se o arquivo estiver vazio, esse método não criará o diretório de destino.
Exceções relacionadas à validação dos caminhos nos destinationDirectoryName arquivos no arquivo zip contido nos source parâmetros são geradas antes da extração. Caso contrário, se ocorrer um erro durante a extração, o arquivo permanecerá parcialmente extraído. Cada arquivo extraído tem o mesmo caminho relativo para o diretório especificado pela destinationDirectoryName entrada de origem para a raiz do arquivo morto.
Se um arquivo a ser arquivado tiver uma hora de última modificação inválida, a primeira data e hora representáveis no formato de carimbo de data/hora zip (meia-noite de 1º de janeiro de 1980) serão usados.