ZipFile Classe
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.
Fornece métodos estáticos para criar, extrair e abrir arquivos zip.
public ref class ZipFile abstract sealed
public static class ZipFile
type ZipFile = class
Public Class ZipFile
- Herança
-
ZipFile
Comentários
Note
Para usar a classe ZipFile em um aplicativo .NET Framework, você deve adicionar uma referência ao assembly System.IO.Compression.FileSystem em seu projeto. Para obter informações sobre como adicionar uma referência ao projeto em Visual Studio, consulte Como adicionar ou remover referências.
Os métodos para manipular arquivos zip e seus arquivos são distribuídos em três classes: ZipFile, ZipArchivee ZipArchiveEntry.
| Para... | Usar... |
|---|---|
| Criar um arquivo zip de um diretório | ZipFile.CreateFromDirectory |
| Extrair o conteúdo de um arquivo zip para um diretório | ZipFile.ExtractToDirectory |
| Adicionar novos arquivos a um arquivo zip existente | ZipArchive.CreateEntry |
| Recuperar um arquivo em um arquivo zip | ZipArchive.GetEntry |
| Recuperar todos os arquivos em um arquivo zip | ZipArchive.Entries |
| Abrir um fluxo para um arquivo individual contido em um arquivo zip | ZipArchiveEntry.Open |
| Excluir um arquivo de um arquivo zip | ZipArchiveEntry.Delete |
Exemplos
Este exemplo mostra como criar e extrair um arquivo zip usando a ZipFile classe. Ele compacta o conteúdo de uma pasta em um arquivo zip e, em seguida, extrai esse conteúdo para uma nova pasta.
using System;
using System.IO.Compression;
class Program
{
static void Main(string[] args)
{
string startPath = @".\start";
string zipPath = @".\result.zip";
string extractPath = @".\extract";
ZipFile.CreateFromDirectory(startPath, zipPath);
ZipFile.ExtractToDirectory(zipPath, extractPath);
}
}
Imports System.IO.Compression
Module Module1
Sub Main()
Dim startPath As String = ".\start"
Dim zipPath As String = ".\result.zip"
Dim extractPath As String = ".\extract"
ZipFile.CreateFromDirectory(startPath, zipPath)
ZipFile.ExtractToDirectory(zipPath, extractPath)
End Sub
End Module
Métodos
| Nome | Description |
|---|---|
| CreateFromDirectory(String, Stream, CompressionLevel, Boolean, Encoding) |
Cria um arquivo zip no fluxo especificado que contém os arquivos e diretórios do diretório especificado, usa o nível de compactação especificado e a codificação de caracteres para nomes de entrada e comentários e, opcionalmente, inclui o diretório base. |
| CreateFromDirectory(String, Stream, CompressionLevel, Boolean) |
Cria um arquivo zip no fluxo especificado que contém os arquivos e diretórios do diretório especificado, usa o nível de compactação especificado e, opcionalmente, inclui o diretório base. |
| CreateFromDirectory(String, Stream) |
Cria um arquivo zip no fluxo especificado que contém os arquivos e diretórios do diretório especificado. |
| CreateFromDirectory(String, String, CompressionLevel, Boolean, Encoding) |
Cria um arquivo zip que contém os arquivos e diretórios do diretório especificado, usa o nível de compactação e a codificação de caracteres especificados para nomes de entrada e comentários e, opcionalmente, inclui o diretório base. |
| CreateFromDirectory(String, String, CompressionLevel, Boolean) |
Cria um arquivo zip que contém os arquivos e diretórios do diretório especificado, usa o nível de compactação especificado e, opcionalmente, inclui o diretório base. |
| CreateFromDirectory(String, String) |
Cria um arquivo zip que contém os arquivos e diretórios do diretório especificado. |
| CreateFromDirectoryAsync(String, Stream, CancellationToken) |
Cria de forma assíncrona um arquivo zip no fluxo especificado que contém os arquivos e diretórios do diretório especificado. |
| CreateFromDirectoryAsync(String, Stream, CompressionLevel, Boolean, CancellationToken) |
Cria de forma assíncrona um arquivo zip no fluxo especificado que contém os arquivos e diretórios do diretório especificado, usando o nível de compactação especificado e, opcionalmente, incluindo o diretório base. |
| CreateFromDirectoryAsync(String, Stream, CompressionLevel, Boolean, Encoding, CancellationToken) |
Cria de forma assíncrona um arquivo zip no fluxo especificado que contém os arquivos e diretórios do diretório especificado, usando o nível de compactação especificado e a codificação de caracteres para nomes de entrada e, opcionalmente, incluindo o diretório base. |
| CreateFromDirectoryAsync(String, String, CancellationToken) |
Cria de forma assíncrona um arquivo zip no caminho |
| CreateFromDirectoryAsync(String, String, CompressionLevel, Boolean, CancellationToken) |
Cria de forma assíncrona um arquivo zip no caminho |
| CreateFromDirectoryAsync(String, String, CompressionLevel, Boolean, Encoding, CancellationToken) |
Cria de forma assíncrona um arquivo zip no caminho |
| ExtractToDirectory(Stream, String, Boolean) |
Extrai 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. |
| ExtractToDirectory(Stream, String, Encoding, Boolean) |
Extrai 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 comentários e, opcionalmente, permite escolher se os arquivos no diretório de destino devem ser substituídos. |
| ExtractToDirectory(Stream, String, Encoding) |
Extrai 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 e comentários. |
| ExtractToDirectory(Stream, String) |
Extrai todos os arquivos do arquivo zip armazenado no fluxo especificado e os coloca no diretório de destino especificado no sistema de arquivos. |
| ExtractToDirectory(String, String, Boolean) |
Extrai todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| ExtractToDirectory(String, String, Encoding, Boolean) |
Extrai todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| ExtractToDirectory(String, String, Encoding) |
Extrai todos os arquivos no arquivo zip especificado para um diretório no sistema de arquivos e usa a codificação de caracteres especificada para nomes de entrada e comentários. |
| ExtractToDirectory(String, String) |
Extrai todos os arquivos no arquivo zip especificado para um diretório no sistema de arquivos. |
| 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(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, 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(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, Boolean, CancellationToken) |
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| 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(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 não deve existir. Esse método criará todos os subdiretórios e o diretório especificado. 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(String, String, Encoding, CancellationToken) |
Extrai de forma assíncrona todos os arquivos no arquivo morto especificado para um diretório no sistema de arquivos. |
| Open(String, ZipArchiveMode, Encoding) |
Abre um arquivo zip no caminho especificado, no modo especificado e usando a codificação de caracteres especificada para nomes de entrada e comentários. |
| Open(String, ZipArchiveMode) |
Abre um arquivo zip no caminho especificado e no modo especificado. |
| OpenAsync(String, ZipArchiveMode, CancellationToken) |
Abre de forma assíncrona um |
| OpenAsync(String, ZipArchiveMode, Encoding, CancellationToken) |
Abre de forma assíncrona um |
| OpenRead(String) |
Abre um arquivo zip para leitura no caminho especificado. |
| OpenReadAsync(String, CancellationToken) |
Abre de forma assíncrona um |