Visão geral

Arquivos que consistem em entradas possuem um método createEntries para compactar pastas inteiras. Esses métodos preservam a estrutura de diretórios e incluem recursivamente todas as subpastas. Além disso, você pode adicionar entradas de arquivo individuais a qualquer subpasta do arquivo.

Como compactar uma pasta ZIP

Para compactar uma pasta em um arquivo ZIP, você pode usar o seguinte trecho de código Python. Usando a classe zp.Archive, você pode criar entradas para a pasta inteira preservando sua estrutura. Basta chamar o método create_entries com o caminho da pasta e salvar o arquivo com o método save, conforme mostrado abaixo:

    with zp.Archive() as archive:
        archive.create_entries("D:\\Data")
        archive.save("archive.zip")

Sampe 2:

    with zp.Archive() as archive:
        archive.create_entry("data\\pictures\\photo.bmp", "image.bmp")
        archive.create_entry("data\\text\\song.txt", "lyrics.txt")
        archive.save("archive.zip")

Esses códigos são usados ​​para criar arquivos a partir de arquivos e pastas. O primeiro código cria um arquivo que adiciona recursivamente todos os arquivos e subdiretórios da pasta "D:\Data", preservando sua estrutura, e então salva o arquivo como "archive.zip". O segundo código cria um arquivo ao qual arquivos individuais são adicionados: o arquivo "data\pictures\photo.bmp" é adicionado ao arquivo com o nome "image.bmp" e o arquivo "data\text\song.txt" é adicionado com o nome "lyrics.txt". Em ambos os casos, o arquivo é salvo como "archive.zip". Esses métodos permitem adicionar diretórios inteiros e arquivos individuais ao arquivo ZIP com a capacidade de alterar seus nomes dentro do arquivo, proporcionando flexibilidade na organização dos dados.

Compactar pasta em 7ZIP

Para o formato 7Z, a abordagem é semelhante à anterior, mas utiliza a classe SevenZipArchive para lidar com a compactação 7z

    with zp.sevenzip.SevenZipArchive() as archive:
        archive.create_entries("D:\\Data")
        archive.save("archive.7z")

Compactar arquivos em TAR

Você pode usar TarArchive em vez da classe de arquivo zip. O uso é completamente semelhante aos exemplos anteriores:

    with zp.tar.TarArchive() as archive:
        archive.create_entries("D:\\Data")
        archive.save("archive.tar")

Sampe 2:

    with zp.tar.TarArchive() as archive:
        archive.create_entry("data\\pictures\\photo.bmp", "image.bmp")
        archive.create_entry("data\\text\\song.txt", "lyrics.txt")
        archive.save("archive.tar")

XAR

O XarArchive opera de forma semelhante aos exemplos descritos anteriormente, permitindo a criação de arquivos XAR com opções para adicionar arquivos ou diretórios preservando sua estrutura.

    with open("archive.xar", "xb") as xar_file:
        with zp.xar.XarArchive() as archive:
            archive.create_entries("C:\\Folder", false)
            archive.save(xar_file)

Outros recursos da API Aspose.ZIP com suporte para Python.Net

Com a biblioteca Aspose.ZIP em Python.Net, você pode lidar perfeitamente com várias tarefas relacionadas a documentos de arquivo ZIP. Se você precisa converter formatos, mesclar arquivos, editar conteúdo ou extrair dados, o Aspose.ZIP oferece funcionalidade abrangente para agilizar seu fluxo de trabalho e aumentar a produtividade.

  

Support and Learning Resources

  
  

Aspose.Zip offers individual archive processing APIs for other popular development environments, listed below: