Arquivo

Posts Tagged ‘file’

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ída

my $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