Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Pb: copie du contenu d'un repertoire dans un autre [ Divers / Débutant(e) ] (kam81)

samedi 9 juin 2007 à 11:24:11 | Pb: copie du contenu d'un repertoire dans un autre

kam81

salut,
je voudrais faire la copie du contenu d'un repertoire dans un autre, cette tâche dois se faire à chaque fois un fichier est inséré dans ce repertoire.pour celà j'utilise l'utilitaire JavaExe que j'integre à mon application pour pouvoir l'executer en tant que service windows; et au niveau de mon application je dois tester à chaque instant la presence d'un fichier dans le repertoire source; voici mon code :

public static void main(String[] args) {
             
         try
          {
         
           File f1=new File("d:\\source");
           f1.mkdir();
         
//Lister les fichiers du repertoire source            
           File[] liste= f1.listFiles();

      //Tant qu'il y a des fichiers dans le repertoire source
          while (liste.length >0) {
              
           for(int i=0;i<liste.length;i++)
           {
               File finput =new File("d:\\source\\"+liste[i].getName());
               File foutput =new File("d:\\destination\\"+liste[i].getName());
                     
               FileInputStream fin = new FileInputStream(finput);
               FileOutputStream fout = new FileOutputStream(foutput);
              
                while (fin.available()>0) fout.write(fin.read());
                fin.close();
                fout.close();
           }

   // Vider le repertoire source
           for(int j=0;j<liste.length;j++) liste[j].delete();
        
          }
          
       }catch(IOException ioe){ioe.printStackTrace(); }
    }
    Le probleme c'est que mon programme boucle sans arrêt.

samedi 9 juin 2007 à 14:18:54 | Re : Pb: copie du contenu d'un repertoire dans un autre

Kysic

Membre Club

Salut,
je penses que le problème est que en faisant "liste[j].delete();" vous détruisez bien le fichier correspondant à "liste[j]", mais vous ne détruisez pas l'entrée correspondante dans le tableau "liste", la taille liste.length ne change pas (d'ailleurs elle ne change jamais).
Vous pouvez soit enlever la boucle "while (liste.length >0) {" dont je n'ai pas compris à quoi elle sert, soit faire un nouveau "liste= f1.listFiles();" à la fin de la boucle.
Voilà j'espère que c'était ça le problème.


[ Lien ]

samedi 9 juin 2007 à 16:37:43 | Re : Pb: copie du contenu d'un repertoire dans un autre

cali70

Membre Club

rajouter un liste = f1.listFiles() à la fin ? oui pourquoi pas mais ca me semble faire beucoup de choses pour pas grand chose...
Pourquoi ne pas tout simplement faire liste = null ? et remplacer while (liste.length >0) par while (liste != null).
Je suis peu être à côté de la plaque mais ca me semble logique...


mercredi 13 juin 2007 à 07:51:13 | Re : Pb: copie du contenu d'un repertoire dans un autre

tlaloctzin

Membre Club

Bonjour ,
personellement j'aurais simplement enlevé la boucle

while (liste.length >0) {}

 , la methode

for(int i=0;i<liste.length;i++)

siffisant emplement non ?

Et à la rigueure faire une verrification a la fin de la methode for .




Cette discussion est classé dans : fin, file, liste, source, repertoire


Répondre à ce message

Sujets en rapport avec ce message

Lister dynamiquement un repertoire HELP [ par bayartda ] je suis un debutant de chez débutant en Java...je cherhce à creer une liste deroulante des fichiers qui se trouvent dans un repertoire...mais surtout Document -> File [ par Frouf85 ] rebonjour,je voulais savoir si quelqu'un connait le moyen de mettre un org.w3c.dom.Document dans un File sans le faire "manuellement"?Existe-t-il des est ce correcte ? [ par didoux95 ] bonjour.il y a pas tres longtemps, j'ai fais un petit code ("pas tres propre"!).Donc plutot que de l'executer j'aimerais juste savoir si il fonctionne xml ... associer un styleSheet [ par heraclesss ] Salut à tous ! J'ai développé quelques petits outils en java pour travailler avec du xml. J'ai une fonction qui cré un xml à partir d'un objet de typ renameTo() [ par stefpoisson ] Bonjour,Je sais que çà doit être une erreur à la con mais j'ai beau essayé de comprendre, je ne comprend pas pourquoi un simple renameTo ne fonctionne problème de programmation en java [ par beberto56 ] 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 so The source attachment does not contain the source for the file AppletClass.class [ par el_teedee ] Salut tout le monde, je tente de compiler et lancer mon applet en debug, et voilà ce que j'obtient. (je viens de copier le contenu d'un projet dans u Thread [ par kyokosan ] salut j'ai un problème de thread quand je compile j'ai ce message d'erreur java.lang.IllegalMonitorStateException: current thread not owner at java porblème JProgressBar [ par fgraff ] Bonjour, je fais un petit programme de sauvegarde.Pendant la copie de fichier j'aimerais faire progresser ma JProgressBar.Lorsque j'imprime les valeur thread [ par kyokosan ] salut J'ai un problème de thread, en exécutant le code il m'affiche ce message d'erreurjava.lang.IllegalMonitorStateException: current thre


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.