begin process at 2012 02 14 20:09:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

Supprimer un dossier avec ses fichiers


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Supprimer un dossier avec ses fichiers

mercredi 1 juillet 2009 à 10:53:29 | Supprimer un dossier avec ses fichiers

ammouna24

Bonjour, Je veux bien supprimer un répertoire avec tous ces fichiers qui le contienne. J'ai essayé dir.delete(); mais ça marche pas. MErci pour votre aide
mercredi 1 juillet 2009 à 11:15:18 | Re : Supprimer un dossier avec ses fichiers

deglingo592003

[url]http://java.sun.com/javase/6/docs/api/java/io/File.html[/url]

Deletes the file or directory denoted by this abstract pathname. If this pathname denotes a directory, then the directory must be empty in order to be deleted.

juste un petit coup de javadoc aurait été beaucoup plus rapide ...

il faut donc parcourir ton dossier ( et éventuellement ses sous dossier ) pour supprimer chaque fichier avant de pouvoir supprimer le dossier en lui même.
mercredi 1 juillet 2009 à 11:22:36 | Re : Supprimer un dossier avec ses fichiers

ammouna24

Oui exactement donc j'ai essayé ça

static public void deleteDirectory(File path) {
    if( path.exists() ) {
      File[] files = path.listFiles();
      for(int i=0; i<files.length; i++) {
         if(files[i].isDirectory()) {
           deleteDirectory(files[i]);
         }
         else {
           files[i].delete();
         }
      }
    }
    path.delete();
  }
}

mais ça marche pas très bien parceque moi je veux créer un dossier temporaire pour mettre des fichiers index avec lucence et puis supprimer le répertoire en fin de traitement.

Le problème qui me viens est :
quand je suppose que le dossier est supprimer et dans une nouvelle itération d'indexation avec lucence (je veux créer ce même dossier temp)  j'ai cette erreur [Le fichier spécifié est introuvable)].

Merci

mercredi 1 juillet 2009 à 14:13:37 | Re : Supprimer un dossier avec ses fichiers

deglingo592003

je n'ai pas testé ce code mais il m'a l'air correct

Je ne connait pas "lucence" par contre tu souhaite recréer exactement le même dossier ... dans ce cas pourquoi ne pas simplement supprimé le contenu du dossier au lieu de supprimer le dossier en lui même pour le recréer par la suite ?

sinon si tu souhaite quand même supprimer pour re créer, essaye de faire un test si le repertoire existe avant d'essayé de le crée à nouveau, on ne sait jamais que l'erreur serai ailleur (un problème de rafraichissement des données ?)
mercredi 1 juillet 2009 à 14:24:04 | Re : Supprimer un dossier avec ses fichiers

deglingo592003

Je ne trouve pas de quoi éditer mon message

pour moi sous eclipse avec java 1.6, la suppression du dossier et ce qu'il contient fonctionne correctement, et pas d'erreur de ce coter tout est bien supprimé et je peut re créer derrière sans aucun soucis.

par contre une chose
 quand tu re appelle ta fonction pour la récursivité

File[] files = path.listFiles();

ton tableau contient le nom des fichiers et pas le path  jusqu'au fichier

par exemple :

premier appelle tu veux supprimer tout le contenu de c:\dossier1\dossier2

dans ce dossier2 tu a sous dossier 1
qui te donnerai par exemple

C:
----|dossier1
--------|dossier2
------------| fichier 1
------------| fichier 2
------------| Sous dossier 1 

donc ton premier appel se fait avec    deleteDirectory(C:\dossier1\dossier2)

tu trouve dedans "sous dossier 1" qui est contenu dans ton tableau

donc tu fait appelle a deleteDirectory(sous dossier1)

or il faut le path complé deleteDirectory(c:\dossier1\dossier2\sous dossier1)

bref essaye en remplacant deleteDirectory(files[i]) par deleteDirectory(path+files[i]) sans oublié de rajouter "\" ou "/" en fonction de ton OS pour la separation des fichiers

tien moi au courant
mercredi 1 juillet 2009 à 14:33:05 | Re : Supprimer un dossier avec ses fichiers

ammouna24


Le problème avec deleteDirectory(path+files[i]) elle accepte des file mais l'pérateur + ne marche pas avec les files.
 
mercredi 1 juillet 2009 à 14:40:42 | Re : Supprimer un dossier avec ses fichiers

deglingo592003

par exemple sous Windows

deleteDirectory(new File(path+"\\"+file[i]));
mercredi 1 juillet 2009 à 15:48:08 | Re : Supprimer un dossier avec ses fichiers

kirua12

Salut,

il vaut mieux utiliser les constantes pour les séparateurs :
java.io.File.separator ou java.io.File.separatorChar


mercredi 1 juillet 2009 à 15:56:44 | Re : Supprimer un dossier avec ses fichiers

deglingo592003

oui oui utiliser les constante mais bon la c'était juste pour des test !

ou simplement : String separator = System.getProperty("file.separator");
jeudi 2 juillet 2009 à 14:45:15 | Re : Supprimer un dossier avec ses fichiers

ammouna24

Merci pour vos réponses, ça marche mais j'ai encore des problèmes de suppression des fichiers qui ont comme extension (.f1, .f2, .fdx, .frq; .tis, .prx).Merci


Cette discussion est classée dans : dossier, fichiers, supprimer


Répondre à ce message

Sujets en rapport avec ce message

Supprimer un repertoire non vide [ par asetti ] Slt,je dois supprimer un répertoire.J'utilise donc le code ci-dessous qui le supprime que si le repertoire est vide.comment faire pour pouvoir supprim ajouter ou supprimer des fichiers dans un ZIP existant [ par larecrue ] Voila mon probleme,Je zippe dans des nouvelles archives et dezzippe sans probleme. Par contre, je n'arrive pas a modifier des archives zip existantes Comment on peut supprimer un dossier ? [ par info2601 ] SalutEn utilisant java, comment on peut supprimer un dossier qui peut contenir des dossiers ou/et des fichiers ? Je préfère ne pas avoir la demande de supprimer des fichiers en fermant l'application web [ par izem23 ] Bonjour, Je souhaite savoir si c'est possible de supprimer un fichier avec myFile.delete() en java mais juste au moment de quitté mon application web Lire tous les fichiers d'un Dossier [ par Karibou95 ] Bonjour, j'ai un probleme en java je souhaiterais lire tous les fichiers .dat d'un dossier qui commencent par une certaine lettre ( "a" par exemple) Sécurité java [ par aurelbobol6 ] Bonjour a tous,Je lance mon code java avec le SecurityManager(java.policy)Voici la situation, je travaille avec un dossier(toutes permissions sur "C:/ existence d'un fichier dans un dossier [ par neg03 ] Bonjour, je réalise une application qui parse des fichiers xml et insère les informations dans une base de données. Concernant les fichiers xml, un au Modifier les icones de fichiers et de dossier [ par PierreAmmeloot ] Bonjour, je souhaite écrire un code Java pour modifier l'icône de certaines dossiers / fichiers de mon système.Je suis en train de développer une appl souci FileDialog [ par jeremieT ] Bonjour,Dans un projet je dois sélectionner un dossier de fichiers a lister.pour cela dans l'interface graphique j'ai mis un bouton et une classe File lister un dossier [ par jeremieT ] Bonjour,j'essai de lister les fichiers .avi d'un dossier. Le code que j'ai écris me semble correct, pourtant je reçois une exception java.lang.NullPoi


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales