Compactando e descompactando arquivos ZIP com Java

Dica enviada pelo Claudio Roberto Thomé ([EMAIL PROTECTED])


A linguagem Java também oferece mecanismos para compactar e descompactar arquivos, 
isto pode ser muito útil, considerando que podemos utilizar para guardarmos 
arquivos ou para transmitir via Web. 

A utilização é muito fácil de se implementar, o código fica assim:

// importando pacotes

        import java.io.*;
        import java.util.*;
        import java.util.zip.*;
        import java.util.zip.ZipFile; 


/* compactando arquivo*/

...
 
            String inFile = "teste.txt";
            String outFile = "fileZipado.zip";
            // atribuindo arquivo
            FileInputStream in = new FileInputStream(inFile);
            // instanciando objeto do tipo zip
            ZipOutputStream out = new ZipOutputStream(new
FileOutputStream(outFile));

            // adicionar a saída para stream.
...            
    



/* Descompactando arquivo*/

        ...
         String inFile = "fileZipado.zip";
         BufferedOutputStream dest = null;
        // instanciando objeto de entrada 
         FileInputStream fis = new FileInputStream(inFile);
        // instanciando objeto para leitura do zip.
         ZipInputStream zis = new ZipInputStream(new
BufferedInputStream(fis));
        // fazendo leitura zip
         while((entry = zis.getNextEntry()) != null) {
            System.out.println("Extracting: " +entry);
                // adicionar a saida para stream
         }
      ... 


Além destas funcionalidades podemos fazer várias outras coisas como listar
um arquivo .zip, definir um nível de compactação, definir um comentário no
arquivo .zip e outras funcionalidades.

Veja mais na documentação: 
JDK1.2 - 
http://java.sun.com/products/jdk/1.2/docs/api/java/util/zip/package-summary.html
JDK1.3 - http://java.sun.com/j2se/1.3/docs/api/java/util/zip/package-summary.html

Bons códigos!!!


______________________________________________________________________________
Handerson Ferreira Gomes
Summa Technologies
Boletim Dicas Java - Sua dose diária de Java.




================================================================================
[dicas-list] circula diariamente com pequenas dicas sobre a plataforma Java e é
mais um serviço da Sociedade de Usuários Java - http://www.soujava.org.br
      *** SouJava - Fortalecendo a Comunidade Java Brasileira! ***
- Para contribuir com uma dica, envie um e-mail para [EMAIL PROTECTED]
- Participe de outras listas de discussão sobre a linguagem Java.
  Saiba mais em http://www.soujava.org.br/lista.htm
--------------------------------------------------------------------------------
- Para assinar este boletim: mailto:[EMAIL PROTECTED]
- Para cancelar sua assinatura: mailto:[EMAIL PROTECTED]
- Dicas anteriores: http://www.mail-archive.com/dicas-list%40soujava.org.br
- Para discutir sobre as dicas, acesse o Mundo OO (http://www.mundooo.com.br)


Responder a