Digg StumbleUpon LinkedIn YouTube Flickr Facebook Twitter RSS Reset

Java-source: Extraire un fichier zip avec la somme de contrôle Adler32

Java-source: Extraire un fichier zip avec la somme de contrôle Adler32
{filelink=762}

/***** Code de MesExemples.com *******/
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.File;
import java.util.Scanner;
import java.util.zip.Adler32;
import java.util.zip.CheckedInputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
 
	 class ExempleAdler32ChecksumZip 
	{
 
	public static void main(String args[])
{
 
	// Récupérer le hcemin du fichier
	Scanner input=new Scanner(System.in);
	System.out.println ("Tapez le chemin complet du fichier zip: ");
	String zipFile=input.nextLine();
	// Quitter le programme si le fichier n'existe pas
	if(!new File(zipFile).exists())
	{
System.out.println ("Ce fichier b'existe pas");
return;
	}
 
	try
{
//Créer un lecteur de fichier
FileInputStream fin = new FileInputStream(zipFile);
 
//Créer un objet Checksum pour le lecteur de fichier
CheckedInputStream checksum = new CheckedInputStream(fin,new Adler32());
 
                    // Extraire le fichier et l'enregistrer dans le dossier 
          courant
	ZipInputStream inZipper = new ZipInputStream(checksum);
	ZipEntry entry = inZipper.getNextEntry();
	// Extraire le permier fichier
	OutputStream os = new FileOutputStream(entry.getName());
	byte[] buffer = new byte[1024];
	int length;
	while( (length = inZipper.read(buffer)) > 0)
	{
os.write(buffer, 0, length);
	}
 
	//Fermer le stream et le fichier zip
	os.close();
	inZipper.close();
 
	System.out.println("Voici le fichier extrait du zip: "+entry.getName());
 
                 // Calculer le checksum Adler32
System.out.println("La somme de contrôle Adler32 est: " +
	 checksum.getChecksum().getValue());
 
	}
	catch(IOException ex)
	{
System.out.println("IOException :" + ex);
	}
 
}
 
}
 
/*
Tapez le chemin complet du fichier zip: 
D:Mon JavaCore Java For JDK6.0 Full.zip
Voici le fichier extrait du zip: 
          PH,.Core.Java.Volume-I.Fundamentals.(2007),.8Ed.BBL.[0132354764].pdf
La somme de contrôle Adler32 est: 2547720509
*/