Les Snippets

Connexion

Compression & Decompression ZIP

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 23/09/2006 11:14:51 et initié par sheorogath [Liste]
Date de mise à jour : 23/09/2006 11:42:08
Vue : 13732
Catégorie(s) : Compression & Split
Langages dispo pour ce code :
- Java
- Windev
- Voir tous les langages pour ce code snippet



Langage : Java
Date ajout : 23/09/2006
Posté par sheorogath [Liste]

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

public class FileUtils {
 /**
  * compresse un fichier
  * 
  * @param src
  *            le fichier a compresser
  * @param dest
  *            la destination du fichier decompressé
  * @throws ZipException
  * @throws IOException
  */
 public static void compress(File src, File dest) throws ZipException,
   IOException {
  FileOutputStream fout = new FileOutputStream(dest);
  ZipOutputStream zout = new ZipOutputStream(fout);
  ZipEntry ze = new ZipEntry(src.getName());
  zout.putNextEntry(ze);
  FileInputStream in = new FileInputStream(src);
  byte[] tab = new byte[4096];
  int lu = -1;
  do {
   lu = in.read(tab);
   if (lu > 0)
    zout.write(tab, 0, lu);
  } while (lu > 0);
  zout.finish();

  in.close();

  zout.closeEntry();
  zout.close();
  fout.close();
  in.close();

 }

 /**
  * decompresse un fichier
  * 
  * @param src
  *            fichier a decompresser
  * @param dest
  *            cible
  * @throws IOException
  */
 public static void decompress(File src, File dest) throws IOException {
  FileOutputStream fout = new FileOutputStream(dest);
  FileInputStream in = new FileInputStream(src);
  ZipInputStream zin = new ZipInputStream(in);
  ZipEntry zen = zin.getNextEntry();
  byte[] tab = new byte[4096];
  int lu = -1;
  do {
   lu = zin.read(tab);
   if (lu > 0)
    fout.write(tab, 0, lu);
  } while (lu > 0);
  fout.flush();

  zin.closeEntry();
  zin.close();
  fout.close();
  fout.close();
  in.close();
 }
}

Remarque :
ces methodes de ne permettent la compression que d'un seul fichier et pas de plusieurs.
je ne l'ai prevu que pour pouvoir envoyer des fichier plus petit sur le reseau

Snippets en rapport avec : Compression, Decompression, Zip, Stream, Io



Codes sources en rapport avec : Compression, Decompression, Zip, Stream, Io

{Visual Basic, VB6, VB.NET, VB 2005} [.NET2] COMPRESSION/DÉCOMPRESSION GZIP DE FICHIER GRÂCE À IO.COMPRESSION
Un tout petit sample de la classe incroyablement pratique Io.Compression, permettant de compresser e...

{C / C++ / C++.NET} COMPRESSION FICHIERS ALGORITHME HUFFMAN C
Voila , le code essaye de compresser les donnees selon l'algorithme de huffman en essayant de constr...

{Visual Basic, VB6, VB.NET, VB 2005} VBZIP GESTION D'ARCHIVES AU FORMAT ZIP UTILISANT IONIC.UTILS.ZIP.DLL
archivage au format "zip" création de zip ouverture ( affichage des nom de fichiers ) ajout , su...

{Delphi} EASYCOMPRESSJPG V4 - COMPRESSION AVANCÉE D'IMAGES EN JPEG
Cette source est une nouvelle version de mon (vieux) code EasyCompressJpg http://www.delphifr.com/co...

{C / C++ / C++.NET} WIN32CAB .CAB
Compresser decompresser des fichiers en .cab -password encrypter le fichier -Split fichier a la ...

{Visual Basic, VB6, VB.NET, VB 2005} ZLIB.NET : COMPRESSION ZIP AVEC VB.NET
Voici ma première source en .NET donc soyez indulgent. Après avoir longtemps chercher comment fai...

{PHP} CLASS MYSQL/SQLITE + SAUVEGARDE DE BDD + COMPRESSION ZIP
Après une refonte total du script pour le transformer en class (ca m'as permis de faire ma premiere ...

{Visual Basic, VB6, VB.NET, VB 2005} NET-2 COMPRESSION DE FICHIER EN ZIP AVEC L'AIDE DE VJ# ET EN GZIP AVEC L'AJOUT DU NOM DE FICHIER
L'idée originale est venue d'un besoin de regrouper un paquet de fichiers zip (des polices de caract...

{Visual Basic, VB6, VB.NET, VB 2005} MODULE ZLIB - LA COMPRESSION FACILE... (OU DECOMPRESSION)
Je sais que de telles sources existent déjà sur le site, mais là, ca gère tout en mémoire, sans crée...

{C# / C#.NET} COMPRESSION / DECOMPRESSION A PARTIR DU SDK LZMA DE 7ZIP ( MULTI FICHIER )
Comme le dit le titre, cette librairie / class, je ne sais pas comment vous appelez ça ( ça ne fait ...