PDA

Visualizza la versione completa : [JAVA] Sostituzione files


morphy79
20-10-2005, 15:36
ho un problemino.. devo fare un programmino di aggiornamento che copia certi files in una cartella sovrascrivendo quelli già presenti...
ma se per un qualsiasi motivo, non riesce a copiarne anche uno soltanto ripristina tutto quanto come era prima....

voi come fareste ???
a me viene in mente di copiare tutti i vecchi files in una temp e se un'operazione non riesce riprendermi tutto quello che ho rovinato...

che dite ??? è giusto o ci sono metodi migliori... ??? :master:

eumene
20-10-2005, 16:17
Esiste solo un algoritmo di sostituzione:



tmp = a
a = b
b = tmp


Credo che la scelta di utilizzare una cartella temporanea sia la più giusta.

Per ottimizzare potresti esegure il lavoro in parallello, del tipo, nel corpo del tuo ciclo esegure:



sposta file a in tmp
try {
sovrascrivi file a con file b
} catch() {
errore!!!
}


In questo modo non copi prima tutti i file in temp e nel caso di errore devi ripristinare solo quello che hai già trasferito.

Come la vedi?

morphy79
20-10-2005, 16:24
si infatti è quello che mi immaginavo, ma un confronto di idee con altri programmatori mi serviva proprio !!!
grazie 1000 della risposta !!! :ciauz:

Andrea1979
20-10-2005, 23:03
più che copiare, ti basta rinominare i file vecchi...

morphy79
21-10-2005, 10:34
non mi conviene rinominarli perchè se poi devo recuperarl, come li trovo nelle varie cartelle ???? devo tenermi traccia di tutti i path dei file che ho rinominato... ??

Andrea1979
21-10-2005, 13:29
li rinomini secondo un path prestabilito: per esempio

file1.dat --> tmp_file1.dat

Loading