Criar arquivo ZIP C#

Nesta postagem do blog, exploraremos como criar arquivos ZIP em C# para vários cenários. Se você deseja compactar um único arquivo, vários arquivos ou até mesmo uma pasta inteira, você pode criar rapidamente um arquivo ZIP a partir de seus aplicativos .NET. Além disso, você também explorará o processo rápido de criação de um arquivo ZIP online e gratuito.

Crie um arquivo ZIP on-line gratuitamente

Você pode compactar e organizar seus arquivos em um pacote único e conveniente com este criador de arquivo ZIP gratuito. Além disso, você também pode escolher os arquivos do seu sistema ou um link online para acessá-los. Você não precisa inserir detalhes de cartão de crédito ou e-mail para trabalhar com este utilitário.

Criar arquivo ZIP – instalação da API C#

Você pode criar um arquivo ZIP para compactar vários arquivos em um único arquivo. Basta configurar o Conholdate.Total for .NET acessando-o na seção Releases ou instalá-lo com o seguinte comando NuGet:

Install-Package Conholdate.Total 

Crie ZIP para arquivo em C#

Esta seção aborda diferentes abordagens para criar um arquivo ZIP para compactar arquivos. Ele discute a compactação de um único arquivo, bem como de vários arquivos em um único diretório ZIP, de acordo com seus requisitos.

Crie um arquivo ZIP para um único arquivo em C#

Aprenda o processo passo a passo de criação de um arquivo ZIP para um único arquivo usando C#. As etapas a seguir e o trecho de código guiarão você pelo processo e explicarão como empacotar seu arquivo com eficiência em um arquivo compactado.

  • Crie uma instância da classe FileStream e especifique o nome do arquivo ZIP de saída.
  • Especifique o arquivo a ser adicionado ao arquivo.
  • Inicialize uma instância da classe Archive.
  • Crie o arquivo ZIP de saída.

O trecho de código a seguir demonstra como criar um arquivo ZIP para um único arquivo em C#:

using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
{
    //Arquivo a ser adicionado ao arquivo
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (var archive = new Archive(new ArchiveEntrySettings()))
        {
            archive.CreateEntry("test.txt", source1);

            archive.Save(zipFile);
        }
    }
}

Crie um arquivo ZIP para vários arquivos em C#

As etapas a seguir mostram como criar um diretório ZIP para vários arquivos em C#:

  • Especifique os arquivos de origem a serem compactados, bem como o nome do arquivo de saída.
  • Crie entradas para os arquivos de destino usando o método CreateEntry.
  • Salve o arquivo ZIP de saída contendo vários arquivos.

O código de exemplo abaixo mostra como criar um arquivo ZIP para vários arquivos em C#:

using (FileStream zipFile = File.Open(dataDir + "CompressMultipleFiles_out.zip", FileMode.Create))
{
    using (FileStream source1 = File.Open(dataDir + "test.txt", FileMode.Open, FileAccess.Read))
    {
        using (FileStream source2 = File.Open(dataDir + "test2.txt", FileMode.Open, FileAccess.Read))
        {
            using (var archive = new Archive())
            {
                archive.CreateEntry("test.txt", source1);
                archive.CreateEntry("test1.txt", source2);
                archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "There are two poems from Canterbury corpus" });
            }
        }
    }
}

Crie ZIP para pasta em C#

Às vezes você precisa empacotar uma pasta inteira, incluindo todos os arquivos contidos nela, em um arquivo ZIP. As etapas abaixo resumem como criar um arquivo ZIP para uma pasta em C#:

  • Crie um objeto de classe FileStream e especifique o nome do arquivo ZIP de saída.
  • Crie um objeto da classe Archive.
  • Defina o caminho para a pasta.
  • Crie e exporte o arquivo ZIP de saída.

O exemplo de código a seguir demonstra como criar um arquivo ZIP para uma pasta em C#:

using (FileStream zipFile = File.Open(dataDir + "CompressDirectory_out.zip", FileMode.Create))
{
    using (Archive archive = new Archive())
    {
        DirectoryInfo corpus = new DirectoryInfo(dataDir + "zipfolder");
        archive.CreateEntries(corpus);
        archive.Save(zipFile);
    }
}

Obtenha uma licença de avaliação gratuita

Você pode solicitar uma licença temporária gratuita para avaliar a capacidade total da API sem quaisquer restrições.

Conholdate.Total para .NET - Recursos de aprendizagem

Você pode acessar o recurso a seguir para explorar ainda mais os recursos oferecidos pela API.

Resumindo

A criação de arquivos ZIP em C# abre um mundo de possibilidades para gerenciamento e compartilhamento eficiente de dados. Aprendendo os detalhes compartilhados nesta postagem do blog, você pode adicionar facilmente recursos de compactação de arquivos aos seus aplicativos. Isso permitirá que você economize espaço, transmita dados facilmente e agilize seus fluxos de trabalho. Em caso de qualquer dúvida, sinta-se à vontade para nos escrever no fórum de suporte gratuito.

Veja também