
Como extrair arquivos ZIP em VB .NET
Arquivos Zip são uma forma popular de compactar e agrupar múltiplos arquivos em um único arquivo. Trabalhar com arquivos comprimidos, como arquivos ZIP, é uma tarefa comum no desenvolvimento de software. No VB.NET, os desenvolvedores frequentemente precisam de uma maneira confiável e eficiente para extrair dados de arquivos ZIP. Uma biblioteca poderosa que simplifica esse processo é IronZIP. Neste artigo, vamos explorar o uso do IronZIP para extrair arquivos ZIP em VB.NET.
Como Extrair Arquivos Zip no VB.NET
- Instale a Biblioteca IronZIP.
- Use o método
IronZipArchive.ExtractArchiveToDirectory()para extrair arquivos ZIP. - Use o método
IronZipArchive.ExtractArchiveToDirectory()para extrair arquivos ZIP protegidos por senha. - Use o método
GetArchiveEntryNames()para obter todas as entradas do arquivo ZIP.
O que é IronZIP?
IronZIP, uma coleção de componentes de software .NET para várias necessidades de desenvolvimento. IronZIP se destaca pela sua facilidade de uso, desempenho e suporte para uma ampla gama de recursos de compressão e descompressão.
Casos de Uso do IronZIP
Alguns casos de uso do IronZIP são:
- Compressão de arquivos: Você pode usar o IronZIP para reduzir o tamanho dos seus arquivos e economizar espaço em disco ou largura de banda.
- Distribuição de arquivos: Você pode usar o IronZIP para agrupar múltiplos arquivos em um único arquivo, facilitando o compartilhamento ou transferência.
- Criptografia de arquivos: Você pode usar o IronZIP para proteger seus arquivos com senhas e permissões, e prevenir acesso ou modificação não autorizada.
- Extração de arquivos: Você pode usar o IronZIP para abrir e ler arquivos ZIP de várias fontes, como arquivos locais, fluxos ou URLs, e extrair o conteúdo ou metadados.
- Gerenciamento de arquivos: Você pode usar o IronZIP para manipular arquivos ZIP, como adicionar, excluir ou mesclar entradas, mudar formatos de compressão, ou validar a integridade do arquivo.
Começando com o IronZIP
Para começar a usar o IronZIP no seu projeto VB.NET, precisaremos instalar a biblioteca IronZIP. Podemos fazer isso facilmente usando o Console do Gerenciador de Pacotes NuGet ou o Gerenciador de Pacotes NuGet do Visual Studio.
Instalar o Pacote NuGet do IronZIP
Escreva o seguinte comando no Console do Gerenciador de Pacotes NuGet:
Pressione Enter para executar o comando. O NuGet irá baixar e instalar o pacote IronZIP juntamente com suas dependências. Você verá uma saída no console indicando o progresso da instalação.
Extrair Arquivo Zip em VB.NET
Agora, vamos explorar uma maneira simples de extrair arquivos ZIP usando IronZIP:
Imports IronZip
Module Program
Sub Main(args As String())
' Set paths for the ZIP file and the extraction directory
Dim extractPath As String = "D:\ExtractedFiles"
Dim zipPath As String = "D:\Docs.zip"
' Extract the ZIP file to the specified directory
IronZipArchive.ExtractArchiveToDirectory(zipPath, extractPath)
End Sub
End Module
Usamos o método ExtractArchiveToDirectory da classe IronZipArchive, que extrai todas as entradas de um arquivo ZIP para um diretório especificado. Ele passa dois argumentos para o método: o caminho do arquivo ZIP ("D:\Docs.zip") e o caminho do diretório de destino ("D:\ExtractedFiles"). Se diferentes diretórios não forem especificados, ele extrairá os arquivos na pasta padrão do programa.
Saída

Similarly, we can also extract Tar, GZip, and BZip2 files.
Extrair todos os Arquivos de um Arquivo ZIP Protegido por Senha
Para extrair todos os arquivos de um arquivo ZIP protegido por senha usando IronZIP em VB.NET, podemos usar o seguinte trecho de código:
Imports IronZip
Module Program
Sub Main(args As String())
' Extract password-protected ZIP archive using a password
IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
End Sub
End Module
O código VB.NET acima usa a biblioteca IronZIP para extrair itens de um arquivo ZIP protegido por senha. Ele chama o método ExtractArchiveToDirectory da classe IronZipArchive, que extrai todas as entradas de um arquivo ZIP para um diretório especificado. Ele passa três argumentos para o método: o caminho completo do arquivo ZIP ("PasswordProtectedZip.zip"), o caminho do diretório de destino ("extractedDocs"), e a senha do arquivo ZIP ("myPassw0rd").
IronZIP suporta os algoritmos de criptografia AES-128, AES-256 e tradicionais. Se a senha for incorreta ou o arquivo ZIP não estiver criptografado, o método lançará uma exceção. Os arquivos extraídos são:

Ver Entradas do Arquivo ZIP
Podemos ver as entradas de um arquivo comprimido facilmente usando o IronZIP. O seguinte código abre o arquivo ZIP e exibe suas entradas no console:
Imports IronZip
Sub Main(args As String())
' Specify the ZIP file path
Dim startPath As String = "D:\Docs.zip"
' Open the ZIP archive and list entry names
Using archive As New IronZipArchive(startPath)
Dim names As List(Of String) = archive.GetArchiveEntryNames()
' Print each entry name to the console
For Each name As String In names
Console.WriteLine(name)
Next name
End Using
End Sub
O trecho de código Visual Basic .NET acima usa a biblioteca IronZIP para extrair os nomes das entradas em um arquivo ZIP. O código faz o seguinte:
-
Ele cria uma nova instância da classe
IronZipArchive, passando o caminho do arquivo ZIP ("D:\Docs.zip") como um parâmetro. Isso abre o arquivo ZIP e carrega seu conteúdo na memória. A instância é atribuída a uma variável chamadaarchivee é envolvida em uma declaraçãoUsing, que garante que o arquivo ZIP seja fechado e descartado quando o bloco de código terminar. -
Ele chama o método
GetArchiveEntryNamesdo objetoarchive, que retorna uma lista de strings contendo os nomes de todas as entradas no arquivo ZIP. A lista é atribuída a uma variável chamadanames. -
Ele itera sobre a lista
namesusando um loopFor Eache imprime cada nome no console usando o métodoConsole.WriteLine. Isso exibe os nomes dos arquivos e pastas no arquivo ZIP.

Conclusão
Em conclusão, IronZIP surge como uma ferramenta poderosa para lidar com arquivos ZIP em VB.NET, oferecendo um conjunto rico de funcionalidades para compressão, extração e manipulação. Sua versatilidade vai além do básico, permitindo que os desenvolvedores integrem funções como proteção por senha, criptografia e gerenciamento eficiente de arquivos de forma contínua. Ao explorar os exemplos fornecidos, você pode desbloquear todo o potencial do IronZIP em seus projetos VB.NET.
Conforme demonstrado, a biblioteca simplifica o processo de extração, permitindo que os desenvolvedores lidem facilmente com arquivos ZIP protegidos por senha, visualizem entradas de arquivos e realizem várias operações com facilidade. Além disso, a compatibilidade do IronZIP com uma gama de formatos de compressão e suporte em várias plataformas o torna um ativo valioso para desenvolvedores que trabalham em ambientes diversificados. IronZIP oferece uma opção de teste gratuito que se alinha perfeitamente com seus requisitos.

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 bem estruturados e visualmente atraentes.
Artigos relacionados


