Comment renommer un fichier existant?
J'ai 2 fichiers , File src = new File("loc/xyz.mp3")
et File dst=new File("loc/xyz1.mp3")
Maintenant , je veux renommer dst
à xyz.mp3 tout supprimer src
fichier. Comment puis-je accomplir ?
J'ai essayé ,
src.delete();
dst.renameTo(src);
Je suis en cours d'exécution dans ce AsyncTask en arrière-plan dans mon application , lorsque j'exécute pour la première fois , il fonctionne parfaitement , cependant deuxième temps , il se bloque. S'il vous plaît aider comment dois-je aller à ce sujet.
S'il vous plaît partagez votre logcat messages de trace quand il se bloque. Ne renameTo() retourne false ou lever une exception?
Eh bien , maintenant il ne marche pas crash , enfait il supprime tout le premier fichier maintenant .
Eh bien , maintenant il ne marche pas crash , enfait il supprime tout le premier fichier maintenant .
OriginalL'auteur h4ck3d | 2013-02-20
Vous devez vous connecter pour publier un commentaire.
Essayer de faire:
Cela devrait automatiquement remplacer le fichier d'origine. Cette réponse a été prise à partir d'ici: Comment renommer un fichier existant
OriginalL'auteur Barney
Vous devriez renommer un fichier à l'aide de
Files
, il fonctionne beaucoup plus fiable querenameTo()
.http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#move(java.nio.fichier.Chemin, java.nio.fichier.Chemin, java.nio.fichier.CopyOption...)
OriginalL'auteur Jeroen Vannevel
Docs dit:
Dans
AsyncTask
, vous ne pouvez pas garantir lasrc
etdst
,comme @Machinarius dit, vérifiersrc.exists() && dst.exists()
peut-être vous éviter d'erreur. UtilisationdeleteOnExit
également une bonne pratique.OriginalL'auteur lichengwu
Dans la deuxième manche
dst
n'existe pas dans le système de fichiers, vous devriez jeter unif (src.exists() && dst.exists())
vérifier dans votre code, de manière à éviter l'erreur.OriginalL'auteur Machinarius
Ces deux delete() et renameTo() retourne true ou false selon que c'est le résultat d'exécution. Vous avez probablement besoin d'ajouter une condition de vérifier si l'étape précédente a été la réussite et le fichier est réellement existantes dans le chemin.
OriginalL'auteur wonhee