File.renameTo(File) et déplacement de fichier - Java - Programmation
Marsh Posté le 17-02-2003 à 11:41:05
...ça marche pas, ça marche pas, mais ça fait quoi au juste ?
ça te balance une exception ? si oui, laquelle ?
Marsh Posté le 17-02-2003 à 11:41:58
renameTo me renvoie false au lieu de true et le fichier n'a pas bougé d'un poil.
Ca marche pas quoi
Marsh Posté le 17-02-2003 à 13:22:22
A vue de nez, c'est parce que les 2 répertoires (source et destination) ne sont pas sur le même disque physique. Du coup, ce n'est pas vraiment un déplacement que tu fais, mais une copie physique suivie d'une suppression (un déplacement ne touche pas au fichier, mais seulement au catalogue). Même si le shell encapsule les 2 opérations comme elles étaient les mêmes, du point de vue système d'exploitation, ce sont bien 2 actions différentes.
Marsh Posté le 17-02-2003 à 13:57:06
C'est ce que je crois aussi.
renameTo() ne ferait vraiment que ce que son nom indique : renommer.
Je vais donc devoir faire une copie et une suppression moi-même.
Bon, spalamort non plus...
Marsh Posté le 17-02-2003 à 14:03:26
krosso a écrit : |
bin oui
Marsh Posté le 17-02-2003 à 11:31:31
Hello world.
J'essaye de déplacer des fichiers et j'utilise donc la méthode File.renameTo(File).
Et j'ai un problème : cela fonctionne très bien quand je veux déplacer par exemple :
/tmp/test.txt
vers
/tmp/deplace/text.txt
Mais si je veux déplacer de
/tmp/test.txt
vers
/home/repertoire/test.txt
ça ne marche pas.
Si je veux déplacer de
/home/repertoire/test.txt
vers
/home/repertoire/test/test.txt
ça fonctionne aussi.
J'ai d'abord cru à un pbm de droits, mais là j'ai mis du 777 sur toutes les arborescences de départ et d'arrivée.
Quel est le pbm ??? à noter que /tmp et /home se trouvent sur deux partitions différentes.
Avez-vous déjà rencontrer ce pbm ?
Vais-je devoir copier et supprimer mon fichier pour le déplacer ?
J'utilise un JRE1.2 sous sunOs5.8.
Merci,
ch'Krosso.