Witam,
Tym razem mam problem następującej treści stworzyłem program który spakowuje i rozpakowuje plik, spakowanie działa bez zarzutu natomiast problem jest przy rozpakowywaniu .. co prawda plik zostaje wyciągniety ale ma złe rozszerzenie np w archiwum zip znajduje sie plik txt plik zostanie wyciagniety ale ma równiez rozserzenie zip ;/
Tu kod z ktorego korzystam

import javax.swing.JFileChooser;
import javax.swing.filechooser.FileFilter;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.JOptionPane;
import java.io.*;
import java.util.*;
import java.util.zip.*;
import java.text.*;

class UnZip {
  public static void main(String args[]) throws IOException {
	JFileChooser fileopen = new JFileChooser();
    FileFilter filter = new FileNameExtensionFilter("c files", "c");
    fileopen.addChoosableFileFilter(filter);
    
    int ret = fileopen.showDialog(null, "Wybierz plik");

    if (ret == JFileChooser.APPROVE_OPTION) {
      File file = fileopen.getSelectedFile();
      String nazw = new String(file.getName());
      System.out.println(file);
      System.out.println("Nazwa twojego pliku to: " + nazw);
    InputStream in = 
      new BufferedInputStream(new FileInputStream(nazw)); //podejrzewam ze tu jest blad
    ZipInputStream zin = new ZipInputStream(in);
    ZipEntry e =new ZipEntry(nazw);
    
    while((e=zin.getNextEntry())!= null) {
      if (args.length > 1) {
        if (e.getName().equals(args[1])) {
           unzip(zin, args[1]);
           break;
          }
        }
       unzip(zin, e.getName());
      }
    zin.close();
    }
}
  public static void unzip(ZipInputStream zin, String s) 
     throws IOException {
    System.out.println("unzipping " + s);
    FileOutputStream out = new FileOutputStream(s);
    byte [] b = new byte[512];
    int len = 0;
    while ( (len=zin.read(b))!= -1 ) {
      out.write(b,0,len);
      }
    out.close();
    }
}