Bonjour tous le monde,
je vous expose mon problème, je suis débutant en java et voila ce que j'ai:
j'ai deux répertoire sur mon c:/users/jbernard qui sont source et destination, et je dois faire transférer un fichier qui arrive dans source (test.txt par exemple) automatiquement dans le répertoire destination
j'ai donc programmer un main:
--------------------------------------------------------------------------
public class Main
{
public static void main(String[] args)
{
//Création de mon premier objet de la classe file appelé source
File S = new File("C:/Users/jbernard/Source");
//Création de mon deuxième objet de la classe file appelé destination
File D = new File("C:/Users/jbernard/Destination");
File f = new File (S,"test.txt");
if(f.exists())
{
System.out.println("Le fichier a été déplacé");
}
else
{
System.out.println("Il n'y a aucun fichiers à déplacer");
}
}
------------------------------------------------------------------------------
et j'ai deux classes qui sont copier et déplacer qui sont constituées de la sorte:
------------------------------------------------------------------------------
package javaapplication2;
import java.io.*;
import java.util.*;
// copie le fichier source dans le fichier resultat
// retourne vrai si cela réussit
public class Deplacer
{
public static boolean deplacer(File source,File destination)
{
if( destination.exists() )
{
// On essaye avec renameTo
boolean result = source.renameTo(destination);
if( !result )
{
// On essaye de copier
result = true;
result &= copier(source,destination);
if(result) result &= source.delete();
}
return(result);
}
else
{
// Si le fichier destination existe, on annule ...
return(false);
}
}
public static boolean copier( File source, File destination )
{
boolean resultat = false;
// Declaration des flux
java.io.FileInputStream sourceFile=null;
java.io.FileOutputStream destinationFile=null;
try
{
// Création du fichier :
destination.createNewFile();
// Ouverture des flux
sourceFile = new java.io.FileInputStream(source);
destinationFile = new java.io.FileOutputStream(destination);
// Lecture par segment de 0.5Mo
byte buffer[]=new byte[512*1024];
int nbLecture;
while( (nbLecture = sourceFile.read(buffer)) != -1 ) {
destinationFile.write(buffer, 0, nbLecture);
}
// Copie réussie
resultat = true;
}
catch( java.io.FileNotFoundException f )
{
}
catch( java.io.IOException e )
{
}
finally
{
// Quoi qu'il arrive, on ferme les flux
try
{
sourceFile.close();
}
catch(Exception e)
{
}
try
{
destinationFile.close();
}
catch(Exception e)
{
}
}
return( resultat );
}
}
------------------------------------------------------------------------
Mais mon problème c'est que je n'arrive pas a combiné le tous afin d'appliquer les méthode copier et déplacer sur mon fichier f
Si klk un peut m'aider à résoudre ce problème je lui en serait reconnaissant.
Merci d'avance à tous.

Julien.
