bonjour,
je cherche un lien ou un code source qui permet de copier une repertoire,un lien ou un code source qui permet de parcourir une repertoire .
![]()
bonjour,
je cherche un lien ou un code source qui permet de copier une repertoire,un lien ou un code source qui permet de parcourir une repertoire .
![]()
Salut,
T'es sûr que tu cherches bien ?
Parce que tout est dans la FAQ :
http://java.developpez.com/faq/java/...ichiersReseaux
Si jamais "copier un répertoire" c'est "créer un nouveau répertoire avec une copie de tous les fichiers"...
Comme t'es nouveau sur le forum, je te conseille de faire un petit tour sur les règles, d'aller consulter la FAQ et les tutoriaux. Personne ne donne de réponse tout cuit ici
++
Et tu as de la chance, le monsieur ci-dessus était de bonne humeur, y a des membres qui mordent sur le forum lol.
Sinon si j'étais toi je ne chercherai pas un bout de code tout fait, je chercherai à le concevoir, ce n'est pas très difficile, voivi quelques indices :
Un répertoire et ses fichiers/dossiers sous-jacents a une structure en arbre. En faisant un parcours en profondeur amélioré tu vas parcourir toute l'arborescence (et de se faire résoudre tes deux problèmes).
Procède comme ceci :
Algo copie(dossier)
Voilà je pense que c'est plus constructif de chercher la solution soi-même que d'en copier une sans la comprendre, à tout point de vue.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Pour chaque fichier f de dossier si f est un fichier alors copier f sinon =>(f est un dossier) copie(f)
Je suis d'accord avec ton algorithme sur Windows... mais j'y rajouterais une petite exception sur les machines à base d'Unix, où il existe des répertoires de types "liens symboliques", qu'il faut traiter à part (en fait ne pas copier).
Sinon, on peut se retrouver avec une boucle infinie dans cette méthode récursive.
Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
Mes articles et tutoriaux & Mon blog informatique
En effet mais je doute que f.isDirectory() retourne true sur un lien symbolique, quelqu'il soit (et ça n'a rien à voir).
C'est exact il faut se méfier, un lein symbolique n'a de sens que à 'endroit où il se trouve. Mais bon que tu copie "à la main" ou avec ton programme, le problème reste le même, les liens symboliques vont t'embêter, je te conseille de les copier comme de simples fichiers.
Partager