Sie können nicht erkennen , aber Java hat bereits alle Werkzeuge, die es braucht, um die gemeinsame Datei-Komprimierung und Verpackung ZIP-Format direkt im standardmäßig integriert zu behandeln. Wenn Sie eine Anwendung, die in der Lage, ZIP-Dateien , wie etwa eine neue WinZip Killer handhaben schreiben müssen , hat Java alle Geräte, die Sie brauchen, um loszulegen . Things You
ZIP-Datei
brauchen anzeigen Weitere Anweisungen
1
Erstellen eines Java-Programms . Am einfachsten können Sie dies tun, indem Sie einen Texteditor wie Editor , und speichern Sie sie sofort mit dem Namen zu tun " ZipReader.java . " Allerdings, wenn Sie eine Java Integrated Development Environment wie Netbeans oder Eclipse haben, können Sie ein wenig Zeit , indem Sie auf "Datei" sparen - " . Neues Projekt" >
2
Importieren Sie die folgenden Bibliotheken aus der Java Standard Bibliothek, die Sie brauchen, um Zip-Dateien durch Einfügen der folgenden an der Spitze der Datei, die Sie gerade in Schritt 1 erstellt gelesen wird
Import java.io.FileInputStream ; .
import java . io.FileOutputStream ;
Import java.util.zip.ZipEntry ;
Import java.util.zip.ZipInputStream ;
3
Kopiere folgenden Code in das Programm , um ihm seine Grundstruktur :
public class ZipExample {
public static void main (String [] args ) { try {
} catch ( Exception e) {
System.out.println ( "ERROR" ); }
}
}
der ganze Rest des Codes wird zwischen dem "try " und " fangen" Aussagen, die entworfen , um alle Fehler , die auftreten können zu behandeln sind, zu gehen .
4
Bereiten Sie einige Variablen die halten Daten aus der Zip-Datei vorübergehend durch Einfügen der folgenden Befehle in der " try" -Block der main-Methode Sie in Schritt 3 schrieb :
ZipEntry Eintrag ;
int BUFFER = 1024;
int count = 0;
byte [] data = new byte [ 1024] ;
ZipEntry wird jede Datei in dem ZIP-Archiv wiederum verweisen. Buffer ist die Anzahl der Bytes, die aus der ZIP-Datei zu einem Zeitpunkt, zu lesen, und 1.024 ist ein ziemlich Standard-Nummer, aber es spielt keine Rolle, was Sie wählen. Das Ziel ist einfach , um sicherzustellen , dass die Festplatte nicht überlastet Lesen einzelnen Bytes nacheinander. Schließlich wird Zählung gehen zu verfolgen, wie viele Bytes tatsächlich aus der ZIP-Datei in jedem Durchgang gelesen zu halten (da es die Dateigröße ist unwahrscheinlich, dass ein Vielfaches von 1024 sein . ) Dies ist wichtig , weil Sie brauchen werden , zu wissen, wie viel Daten werden in die neue Datei in Schritt 6 geschrieben.
5
Öffnen Sie die ZIP-Datei. Dies ist ein zweistufiger Prozess . Zunächst müssen Sie die Zip-Datei in ein FileInputStream lesen , und zweitens müssen Sie diese in einen ZipInputStream konvertieren. Fügen Sie den folgenden Code, um dies zu erreichen :
FileInputStream FILE_INPUT = new FileInputStream ( " archive.zip ");
ZipInputStream zin = new ZipInputStream ( FILE_INPUT );
6 < p> gehen Sie durch die ZIP -Datei, ein Eintrag in einer Zeit und schreibe diesen Eintrag auf die Festplatte , mit dem folgenden Code , unmittelbar nach dem letzten Code eingefügt :
while (( entry = zin.getNextEntry () ) = null) {
FileOutputStream fout = new FileOutputStream ! ( entry.getName ());
while ( (count = zin.read (data, 0 , BUFFER ) ) = - 1) {
fout.write (data, 0 , count) ; }
fout.flush ();
fout.close () ;
}
7
Schließen Sie die ZIP-Datei durch Einfügen der folgenden unmittelbar nach dem letzten Code :
zin.close ();