Come estrarre i file Zip in Java

July 18

L'estrazione dei file zip viene eseguita utilizzando una libreria interna Java di classi che lo rende facile per i programmatori. Java utilizza una classe di file zip per accedere, comprimere ed estrarre file. Utilizzando queste classi consente ai programmatori di recuperare un file zip, estrarre un file all'interno dell'archivio e salvarlo in un'altra posizione. Utilizzando la libreria interna con Java per manipolare i file zip richiede solo poche righe di codice da parte dello sviluppatore.

istruzione

1 Importare le classi IO all'inizio del file Java. Senza la libreria di file zip, Java genera un errore. Il codice seguente importa le librerie essenziali per la manipolazione di file:
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;

2 Impostare la posizione dell'archivio file zip e la posizione in cui il programma estrarre il file. Il codice seguente consente di risparmiare ogni posizione in una variabile stringa per un uso successivo nel codice:
String myZip = "C: \ zipfile.zip";
String extractLocation = "c: \ myextract.txt";

3 Allocare flussi di ingresso e di uscita per accedere ai file. Questi flussi sono necessari per Java per leggere e scrivere i file. Il codice seguente crea queste variabili con la posizione della stringa indicata al punto due. Il buffer viene utilizzato per caricare le voci nella memoria per l'elaborazione più veloce:
ZipInputStream Myin = nuova ZipInputStream (new FileInputStream (myZip));
OutputStream myOut = new FileOutputStream (extractLocation);
ZipEntry zipVar;
byte [] mybuf = new byte [1024];
int readByte;

4 Estrarre il file. Questo esempio imposta solo fino un file, ma i seguenti esempi di controlli per più voci del file:
if ((zipVar = myIn.getNextEntry ())! = null) {
while ((readByte = myIn.read (mybuf))> 0) {

myOut.write(mybuf, 0, readbyte);
}

}

5 Chiudere i flussi di liberare risorse sul computer host:
myOut.close ();
myIn.close ();