2012-03-21 5 views
8

Les deux File.renameTo et Files.move en Java peuvent déplacer un fichier. Quelle est la différence entre les deux? Et qui a une meilleure performance?Différence entre File.renameTo et Files.move: Lequel est le plus rapide?

+1

Avez-vous eu un coup d'œil à la documentation avant de poster une question? ['renommerTo'] (http://docs.oracle.com/javase/6/docs/api/java/io/File.html#renameTo%28java.io.File%29), [' move'] (http : //docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#move%28java.nio.file.Path,%20java.nio.file.Path,%20java.nio .file.CopyOption ...% 29). Il semble que ce ne soit pas le cas, vous obtiendrez donc des réponses directement issues de cette documentation. –

+0

Offtopic-Files est seulement dans JDK7. FileUtils d'Apache commun nous a beaucoup aidés. – Jayan

+0

La différence de performance n'est probablement pas importante (sauf si vous avez besoin de supprimer des milliers de fichiers et qu'il y a une raison pour que cela soit critique). – Jesper

Répondre

7
public boolean renameTo(File dest) 

renomme le fichier désigné par ce chemin abstrait.

De nombreux aspects de le comportement de cette méthode sont intrinsèquement dépendant de la plate-forme: L'opération de changement de nom pourrait ne pas être en mesure de déplacer un fichier d'un système de fichiers à l'autre et il pourrait ne pas réussir si un fichier avec le destination Le chemin d'accès abstrait existe déjà.

Source

Mais la méthode move peut déplacer ou renommer un fichier d'une manière indépendante de la plate-forme .

renameTo est juste un type retournaient booléen mais les rendements movele chemin vers le fichier cible

+1

Donc, ils sont les mêmes en termes de performance? – TAAPSogeking

Questions connexes