Ciao!
Sto scrivendo una app per Android, in particolare un cache manager. Semplicemente, queste sono le operazioni che faccio:
1) Scarico una immagine da internet in un InputStream.
2) Uso l'InputStream per salvare su cache il file, e funziona perfettamente:
codice:
try {
os = new FileOutputStream(file);
byte[] data;
data = new byte[is.available()];
is.read(data);
os.write(data);
is.close();
os.close();
} catch (FileNotFoundException e1) {
e1.printStackTrace();
return null;
} catch (IOException e2) {
e2.printStackTrace();
return null;
}
3) L'InputStream mi serve di nuovo (devo passarlo ad un'altra funzione per ottenere un'altra cosa), ma è stato ormai svuotato (il debugger mi fa leggere il valore is.bytesRemaining = 0).
Come faccio, al punto 2), a clonare l'InputStream, in modo tale da preservare quello originale (is)?
Spero mi possiate aiutare. Grazie!