Oppure

Loading
26/12/10 12:49
Bonny
Salve a tutti ho sviluppato un programma che da input di generico tipo di file crea uno zip(metodo) ora nella GUI vorrei inserire una progressbar per tenere traccia del tempo di creazioen del pacchetto, però è sempre diverso in base al numero di file ed la dimensione di essi e questo a priori non lo so, quindi credo che sia l'approccio sbagliato nella risoluzione di questa cosa.
Vi chiedo un consiglio :)
Vi posto il codice del metodo per un eventuale vostra analisi:
    public void doZip(File[] file,String dir) {

        FileInputStream in = null;
        ZipOutputStream out = null;
        byte[] buf = new byte[1024];

        try {
            out = new ZipOutputStream(new FileOutputStream(dir+".zip"));
            for (int i = 0; i < file.length; i++) {

                in = new FileInputStream(file[i].getAbsolutePath());
                out.putNextEntry(new ZipEntry(file[i].getAbsolutePath()));
                int len;
                while ((len = in.read(buf)) > 0) {
                    out.write(buf, 0, len);
                }
                out.closeEntry();
                in.close();
   
            }
            out.close();
           
            JOptionPane.showMessageDialog(null, "Operazione effettuata con successo!", "Conferma operazione", JOptionPane.INFORMATION_MESSAGE);
         
        } catch (IOException e) {
            System.err.println(e.getMessage());
        }
    }
aaa