Originariamente inviato da Josten
ragazzi mi fate un esempio di come usarlo?
inoltre considerando che il file da prendere peserà sui 80 kb ... quanto sarebbe il buffer ideale da usare?
La dimensione può essere qualunque... si preferiscono, chiaramente, i multipli di 2 (in generale, multipli di 1024 byte = 1K).

Un esempio basilare come se ne trovano a centinaia su Internet:

codice:
InputStream is = null;
FileOutputStream fos = null;
try {
   // Ottengo l'InputStream della risorsa dentro il JAR
   is = getClass().getResourceAsStream("...");

   // Apro il file di output
   fos = new FileOutputStream("...");

   // creo il buffer + tutte le variabili necessarie ai controlli
   byte[] buffer = new byte[4096];   // 4KB vedi tu...
   int byteLetti = 0;

   // Leggo dallo stream
   while((byteLetti = is.read(buffer)) >= 0) {
      // scrivo i dati letti sul file
      fos.write(buffer, 0, byteLetti);
   }

   // Flusho
   fos.flush();
} catch (Exception e) {
   e.printStackTrace();
} finally {
   // Chiusura di tutti gli streams
   if (is != null) {
      try { is.close(); } catch (Exception e) { }
   }
   if (fos != null) {
      try { fos.close(); } catch (Exception e) { }
   }
}
Ciao.