05/03/12 15:49
killer
Salve a tutti ho creato una funzione che legge il contenuto di un file, in una directory scelta.
Come faccio ad incrementare i valori della progress bar? il metodo setValue(valore) non funziona x nulla. sbaglio qualcosa !?
Ho la necessità di calcolare la percentuale esatta di progressione, man mano che il file viene letto . Chi mi aiuta e mi fa capire bene come si fa?
Ho notato che il valore di ritorno del metodo transferTo viene aggiornato ogni 2GB e subito dopo riparte il ciclo. come mai !? e se volessi man mano tenere traccia dell'andamento progressivo sulla pbar?
Come faccio ad incrementare i valori della progress bar? il metodo setValue(valore) non funziona x nulla. sbaglio qualcosa !?
Ho la necessità di calcolare la percentuale esatta di progressione, man mano che il file viene letto . Chi mi aiuta e mi fa capire bene come si fa?
try { File fout = null; FileChannel in = new FileInputStream(new File("f.iso")).getChannel(); FileChannel out = new FileOutputStream((fout = new File("clonato.iso"))).getChannel(); long position = 0; long byteCount = in.size(); while (position < byteCount) { System.out.println("lettura in corso"); System.out.println("position: " + (position += in.transferTo(position, byteCount, out))); jProgressBar1.setValue((100 * (int) position) / (int) byteCount); jProgressBar1.repaint(); } System.out.println("File copy complete. " + byteCount + " bytes copied to " + fout.getAbsolutePath()); in.close(); out.close(); } catch (IOException e) { e.printStackTrace(System.err); }
Ho notato che il valore di ritorno del metodo transferTo viene aggiornato ogni 2GB e subito dopo riparte il ciclo. come mai !? e se volessi man mano tenere traccia dell'andamento progressivo sulla pbar?
Ultima modifica effettuata da killer 05/03/12 15:51
aaa