Como criar, ler e extrair um arquivo ZIP em C#

Tutorial C#: Comprimir Arquivos, Ler e Extrair ZIP

This article was translated from English: Does it need improvement?
Translated
View the article in English

A opção Criar ZIP gera um novo arquivo ZIP selecionando arquivos ou diretórios, especificando as configurações de compressão e criando o arquivo.

A função Extrair ZIP recupera o conteúdo especificando o arquivo ZIP de origem, a pasta de destino e extraindo arquivos e diretórios para o local especificado.

Além dessas funções, o IronZIP também pode abrir um arquivo ZIP existente, adicionar mais arquivos a ele e, em seguida, exportar o resultado como um novo arquivo ZIP contendo todos os arquivos incluídos.

Início rápido: Comprimir arquivos ou extrair arquivo ZIP facilmente com o IronZIP

Comece rapidamente — crie, modifique ou comprima arquivos ZIP usando o IronZIP com apenas algumas chamadas de API simples. Ideal para desenvolvedores que desejam trabalhar instantaneamente com arquivos compactados, sem código repetitivo.

  1. Instale IronZIP com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronZip
  2. Copie e execute este trecho de código.

    IronZipArchive.ExtractArchiveToDirectory("project.zip", "outputFolder");
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronZIP em seu projeto hoje com uma avaliação gratuita

    arrow pointer

Criar Arquivo ZIP — Exemplo

Para criar arquivo ZIP, você pode convenientemente usar a instrução using em C# junto com o construtor IronZipArchive. O IronZIP simplifica esse processo, permitindo que você criar ZIP vazio com apenas algumas linhas de código.

Em seguida, utilize o método Add para importar seus arquivos para o arquivo ZIP. Este método permite adicionar arquivos de várias localizações, incluindo um diretório inteiro onde todos os arquivos dentro dele serão incluídos.

Por fim, use o método SaveAs para exportar o arquivo ZIP.

:path=/static-assets/zip/content-code-examples/tutorials/create-read-extract-zip-create.cs
using IronZip;

// Create an empty ZIP
using (var archive = new IronZipArchive())
{
    // Add files to the ZIP
    archive.Add("./assets/image1.png");
    archive.Add("./assets/image2.png");

    // Export the ZIP file
    archive.SaveAs("output.zip");
}
Imports IronZip

' Create an empty ZIP
Using archive = New IronZipArchive()
	' Add files to the ZIP
	archive.Add("./assets/image1.png")
	archive.Add("./assets/image2.png")

	' Export the ZIP file
	archive.SaveAs("output.zip")
End Using
$vbLabelText   $csharpLabel

Descompactar ZIP para uma pasta

Para recuperar o conteúdo de um arquivo ZIP, você pode usar o método ExtractArchiveToDirectory. Basta indicar o caminho do arquivo ZIP desejado e o diretório onde você quer que os arquivos extraídos sejam colocados.

:path=/static-assets/zip/content-code-examples/tutorials/create-read-extract-zip-extract.cs
using IronZip;

// Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted");
Imports IronZip

' Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted")
$vbLabelText   $csharpLabel

Adicionar arquivos a um arquivo existente

Você pode modificar um arquivo ZIP existente com arquivos adicionais de forma eficiente usando o IronZIP. O processo começa com a criação da instância do objeto do arquivo ZIP a partir do caminho de um arquivo ZIP existente. Uma vez que o arquivo seja aberto, você pode usar o método Add para adicionar arquivos ao arquivo existente.

:path=/static-assets/zip/content-code-examples/tutorials/create-read-extract-zip-add-files.cs
using IronZip;

// Open existing ZIP
using (var archive = IronZipArchive.FromFile("existing.zip"))
{
    // Add files
    archive.Add("./assets/image3.png");
    archive.Add("./assets/image4.png");

    // Export the ZIP file
    archive.SaveAs("result.zip");
}
Imports IronZip

' Open existing ZIP
Using archive = IronZipArchive.FromFile("existing.zip")
	' Add files
	archive.Add("./assets/image3.png")
	archive.Add("./assets/image4.png")

	' Export the ZIP file
	archive.SaveAs("result.zip")
End Using
$vbLabelText   $csharpLabel

Com essa funcionalidade, você pode atualizar e expandir seus arquivos ZIP de forma eficiente para atender às necessidades em constante evolução do seu projeto. O IronZIP facilita muito o gerenciamento de arquivos em seus projetos C#, seja para comprimir arquivos ou extrair arquivo ZIP com facilidade.

Uma abordagem similar pode ser alcançada para outros formatos de arquivo e compressão, como TAR, GZIP e BZIP2 usando as classes IronTarArchive, IronGZipArchive e IronBZip2Archive, respectivamente.

Perguntas frequentes

Como posso criar um arquivo ZIP em C#?

Para criar um arquivo ZIP em C#, instancie a classe IronZipArchive da biblioteca IronZip. Use o método Add para adicionar arquivos ou diretórios ao arquivo e o método SaveAs para salvar o arquivo. Exemplo de código: using (var zip = new IronZipArchive()) { zip.Add(@"C:\path\to\directory"); zip.SaveAs(@"C:\path\to\output.zip"); } .

Como faço para ler e extrair o conteúdo de um arquivo ZIP em C#?

Você pode ler e extrair o conteúdo de um arquivo ZIP usando a classe IronZipArchive para abrir o arquivo ZIP. Utilize o método ExtractArchiveToDirectory para especificar o diretório de destino para os arquivos extraídos. Exemplo: using (var zip = new IronZipArchive(@"C:\path\to\archive.zip")) { zip.ExtractArchiveToDirectory(@"C:\path\to\output\directory"); } .

Posso adicionar arquivos a um arquivo ZIP existente em C#?

Sim, você pode adicionar arquivos a um arquivo ZIP existente em C#. Abra o arquivo ZIP existente usando a classe IronZipArchive , use o método Add para incluir arquivos adicionais e, em seguida, salve o arquivo atualizado com o método SaveAs .

Quais bibliotecas podem ser usadas para gerenciamento de arquivos ZIP em C#?

IronZip é uma biblioteca abrangente disponível no NuGet para gerenciar arquivos ZIP em C#. Ela permite criar, ler e extrair arquivos ZIP de forma eficiente usando classes como IronZipArchive .

Como posso lidar com outros formatos de compressão, como TAR e GZIP, em C#?

Além de arquivos ZIP, você pode gerenciar outros formatos de compressão usando o IronZip. Para TAR, GZIP e BZIP2, use as classes IronTarArchive , IronGZipArchive e IronBZip2Archive , respectivamente, para lidar com esses formatos de maneira semelhante.

Como posso começar a trabalhar com arquivos ZIP em C#?

Comece baixando a biblioteca IronZip do NuGet. Instancie a classe IronZipArchive para criar ou abrir arquivos ZIP e use métodos como Add e ExtractArchiveToDirectory para gerenciar os arquivos.

É possível extrair arquivos específicos de um arquivo ZIP em C#?

Sim, é possível extrair arquivos específicos de um arquivo ZIP em C#. Abra o arquivo ZIP usando a biblioteca IronZipArchive e acesse os arquivos desejados para extração utilizando os métodos fornecidos pela biblioteca.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 19,717 | Versão: 2026.4 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronZip
executar um exemplo Veja seus arquivos se transformarem em um arquivo morto.