ciao ragazzi cè una istruzione per copiare velocemente il contenuto di un file, che so una istruzione tipo "copy"
grazie ciao
ciao ragazzi cè una istruzione per copiare velocemente il contenuto di un file, che so una istruzione tipo "copy"
grazie ciao
quando il diavolo ti accarezza è perchè vuole la tua anima
No, non c'è alcun metodo per copiare file. Devi farlo tu, quindi devi ottenere un InputStream, un OutputStream e leggere e scrivere a blocchi di N byte (al fine di avere buone prestazioni). Si può anche fare con i channel.Originariamente inviato da gax80
ciao ragazzi cè una istruzione per copiare velocemente il contenuto di un file, che so una istruzione tipo "copy"
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ho provato questo codice ma non mi fa nulla..cè un altro modo?codice:public class MainClass { public static void main(String args[]) { try { FileReader fr = new FileReader(args[0]); FileWriter fw = new FileWriter(args[1]); int i; while ((i = fr.read()) != -1) { fw.write(i); } fw.close(); fr.close(); } catch (Exception e) { System.out.println("Exception: " + e); } } }![]()
quando il diavolo ti accarezza è perchè vuole la tua anima
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.Originariamente inviato da gax80
ho provato questo codice ma non mi fa nulla..cè un altro modo?![]()
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 (); } }
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet