Originariamente inviato da gax80
ho provato questo codice ma non mi fa nulla..cè un altro modo?
A parte il fatto che i Reader/Writer non sono certo l'ideale per fare una copia binaria, infatti lavorano sui caratteri e non sui byte!!! E in ogni caso avrebbe prestazioni pessime il tuo codice, visto che leggi/scrivi 1 carattere per volta.

Si può fare, come avevo, con i channel. Ed è di una semplicità tendente all'infinito!

codice:
import java.io.*;
import java.nio.channels.*;
....

public static void copyFile (String source, String destination)
    throws IOException
{
    FileChannel srcChannel = null;
    FileChannel dstChannel = null;

    try
    {
        srcChannel = new FileInputStream (source).getChannel ();
        dstChannel = new FileOutputStream (destination).getChannel ();

        srcChannel.transferTo (0, srcChannel.size (), dstChannel);
    }
    finally
    {
        if (srcChannel != null)
            srcChannel.close ();
        if (dstChannel != null)
            dstChannel.close ();
    }
}