[JAVA] zip-Funktion - unzip funktioniert nicht *geloest*

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
The Torso
Beiträge: 882
Registriert: 13.07.2003 12:46:40
Lizenz eigener Beiträge: MIT Lizenz

[JAVA] zip-Funktion - unzip funktioniert nicht *geloest*

Beitrag von The Torso » 02.11.2004 19:08:06

Vielleicht kann mir jemand von euch helfen, und zwar folgendes: Ich hab gerade ne Zip-Funktion geschrieben, die mir eine Zip-Datei erzeugen soll. Die Zip-Datei wird auch erzeugt, aber ich kann das File nicht mehr enzippen.
Gezippt wird nur eine einzige Datei, und das schaut bei mir ca. so aus:

Code: Alles auswählen

mZipAction = new AbstractAction("Zip") {
			public void actionPerformed(ActionEvent e) {
			
				int retval = mFileChooser.showOpenDialog(EditorSW3Ex1.this);
				if (retval == JFileChooser.APPROVE_OPTION) {
					File f = mFileChooser.getSelectedFile();
					try {
						ZipOutputStream out = new ZipOutputStream(new FileOutputStream(f.getName()+".zip"));
						FileInputStream in = new FileInputStream(f);
						byte[] buf = new byte[8192];

						out.putNextEntry(new ZipEntry(f.getName()+".zip"));
						    
						int len;
						while ((len = in.read(buf)) > 0) {
							out.write(buf, 0, len);
						}
						    
						out.closeEntry();
						in.close();
					} catch (IOException ioex) {
						System.out.println(ioex);
						System.exit(1);
					}
				}
			}
		}; 
Ausgeführt wird der code, wenn ich im Menu auf zip klicke, dann öffnet sich das fenster, so weit funktioniert wie gesagt alles.

Nun ja, hier ist sicher jemand schlauer als ich und kann mir Helfen!

mfg cg
Debian GNU/Linux 00101010

Benutzeravatar
The Torso
Beiträge: 882
Registriert: 13.07.2003 12:46:40
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von The Torso » 03.11.2004 01:14:14

Wenns jemanden Interessiert, ich habs geschafft:

Code: Alles auswählen

mZipAction = new AbstractAction("Zip") {
			public void actionPerformed(ActionEvent e) {

				int retval = mFileChooser.showOpenDialog(EditorSW3Ex1.this);
				if (retval == JFileChooser.APPROVE_OPTION) {
					try {
						File f = mFileChooser.getSelectedFile();
 
						String output = f.getPath()+".zip";
						ZipOutputStream zout = new ZipOutputStream(new FileOutputStream(output));
						
						int len = 0;
						byte[] buffer = new byte[1024]; 
						FileInputStream fis = new FileInputStream(f); 

						zout.putNextEntry(new ZipEntry(f.getPath())); 
						
			            while((len = fis.read(buffer)) != -1) 
			            { 
			                zout.write(buffer, 0, len); 
			            } 
						
						zout.close();
						fis.close();
						
					} catch ( ZipException zex ) {
						System.out.println(zex);
						System.exit(1);
					} catch (IOException ioex) {
						System.out.println(ioex);
						System.exit(1);
					} 
				}
			}
		}; 
Und nun auf zum unzip :wink: .
Debian GNU/Linux 00101010

Antworten