Archive Zip: Zipando e Extraindo Arquivos (Parte II)
A tarefa de descompactar arquivos utilizando o Archive Zip é algo extremamente fácil.
Com apenas dois comandos é possivel fazer isto. Acredita?
Vejamos.
Descompactando Arquivos
Logo na instânciação já chamamos o arquivo zipado ao qual iremos descompactar.
my $zip = new Archive::Zip( “C:/arquivos.zip” );
Também poderiamos ter usado o mesmo comando com o construtor vazio, e em seguida ter utilizado o comando Read, porém utilizamos menos espaço na memória por optar pela primeira opção.
Com todos os arquivos armazenados na variável $zip, nos resta apenas chamar a função que transformará estes dados em arquivos. Esta é a extractTree( ).
A função extractTree( ) nos permite definir três parâmetros, sendo estes opcionais. O primeiro parâmetro determina que se extrairá apenas as pastas que, em seus nomes, tiverem os caracteres que forem definidos nele. O segundo parâmetro apenas altera, no nome do arquivo, os caracteres definidos como necessários por quaisquer outros.
Estes dois parâmetros iniciais não traremos a atenção, a não ser o terceiro parâmetro que é onde definiremos o local onde os arquivos extraídos serão colocados.
$zip->extractTree(”,”,”C:/arquivos/”);
Fim. E você não acreditou que com dois comandos o Perl iria realizar esta proeza?
Mas é só o Perl mesmo!
Perl, I Love It.
Veja o Código Completo:
(zip-exemplo2.pl)
#!/usr/bin/perl
use Archive::Zip;$arquivo=”C:/arquivos.zip”; # Arquivo compactado
$saida = “C:/arquivos/”; # Pasta de saídamy $zip = new Archive::Zip($arquivo); # Abre o arquivo
die “Erro ao Gravar” unless $zip->extractTree( ‘ ‘ , ‘ ‘ , $saida ) == AZ_OK;
# Extrai os dados a menos que encontre algum erro