public boolean copierFichier(ObjectInputStream input, ObjectOutputStream output) throws ClassNotFoundException {  //Methode permettant la copie d'un fichier 
         boolean resultat = false; 
         File source = null;
         File destination = null;
         
        // Declaration des flux 
        FileInputStream sourceFile=null; 
        FileOutputStream destinationFile=null;
        ArrayList<String> srcAndDst = new ArrayList<String>();
        try { 
            	Object object = input.readObject();
            	srcAndDst =  (ArrayList<String>) object;
            	
                // Création du fichier :
            	source = new File(srcAndDst.get(0));
            	destination = new File(srcAndDst.get(1));
 
              // destination.createNewFile(); 
                // Ouverture des flux 
                sourceFile = new FileInputStream(source); 
                destinationFile = new FileOutputStream(destination); 
                // Lecture par segment de 0.5Mo  
                byte buffer[]=new byte[524288000]; 
                int nbLecture; 
                while( (nbLecture = sourceFile.read(buffer)) != -1 ) { 
                        destinationFile.write(buffer, 0, nbLecture); 
                }  
                 
                // Copie réussie 
                resultat = true; 
                envoiConfirmation(output,resultat,"Le fichier "+source.getName() + " a bien été copié !");
        } catch( FileNotFoundException f ) { 
        	System.out.println("fichier non trouvé!");
        } catch( IOException e ) { 
        	System.out.println("Problème IO!");
        } finally { 
                // Quoi qu'il arrive, on ferme les flux 
                try { 
                        sourceFile.close(); 
                } catch(Exception e) { } 
                try { 
                        destinationFile.close(); 
                } catch(Exception e) { } 
        }  
       return( resultat ); 
    }