Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Futur Membre du Club
    Inscrit en
    décembre 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : décembre 2010
    Messages : 10
    Points : 8
    Points
    8
    Par défaut supprimer le contenu d'un dossier sans supprimer le dossier
    bonjour,
    je veux supprimer toutes les fichiers dans un répertoire ( un dossier ) sans supprimer le repertoire.

    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    static public void deleteDirectory(String emplacement) {
     
    		File path = new File(emplacement);
    	    if( path.exists() ) {
    	      File[] files = path.listFiles();
    	      for(int i=0; i<files.length; i++) {
    	         if(files[i].isDirectory()) {
    	           deleteDirectory(path+"\\"+files[i]);
    	         }
    	         else {
    	           files[i].delete();
    	         }
    	      }
    	    }
    	    path.delete();
    	  }

    mon probléme c'est qu'il supprime même le dossier.

    je veux garder le dossier mais je veux suppimer les fichiers dans le répertoire.

    merci de votre aide

  2. #2
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : octobre 2006
    Messages : 1 232
    Points : 2 058
    Points
    2 058
    Par défaut
    bonjour,

    Tu n'as qu'a enlever le path.delete(); à la fin ! sauf si ton repertoire contient aussi des répertoires dans se cas tu dois exclure le point d'entré de ton code récursif
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    juin 2007
    Messages
    4 063
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2007
    Messages : 4 063
    Points : 7 140
    Points
    7 140
    Par défaut
    Ta suppression de répertoire est mal placée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    static public void deleteDirectory( String emplacement )
    {
      File path = new File( emplacement );
      if( path.exists() )
      {
        File[] files = path.listFiles();
        for( int i = 0 ; i < files.length ; i++ )
        {
          if( files[ i ].isDirectory() )
          {
            deleteDirectory( path+"\\"+files[ i ] );
          }
          files[ i ].delete();
        }
      }
    }
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  4. #4
    Futur Membre du Club
    Inscrit en
    décembre 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : décembre 2010
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par dinobogan Voir le message
    Ta suppression de répertoire est mal placée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    static public void deleteDirectory( String emplacement )
    {
      File path = new File( emplacement );
      if( path.exists() )
      {
        File[] files = path.listFiles();
        for( int i = 0 ; i < files.length ; i++ )
        {
          if( files[ i ].isDirectory() )
          {
            deleteDirectory( path+"\\"+files[ i ] );
          }
          files[ i ].delete();
        }
      }
    }



    BONSOIR


    le code se fonctionne correctement.

    merci à tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AppleScript] Supprimer des sous dossiers sans supprimer les fichiers
    Par mathieu707 dans le forum AppleScript
    Réponses: 9
    Dernier message: 19/03/2018, 17h58
  2. Réponses: 4
    Dernier message: 07/07/2011, 12h17
  3. Réponses: 2
    Dernier message: 16/04/2010, 13h04
  4. Cacher une vue sans supprimer son contenu
    Par Elmotardo dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 03/07/2009, 10h48
  5. supprimer le contenu d'un dossier sans supprimer le dossier
    Par jojo42000 dans le forum Général Python
    Réponses: 4
    Dernier message: 29/07/2008, 19h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo