IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Qt Discussion :

Effacer un répertoire plein


Sujet :

Qt

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 49
    Par défaut Effacer un répertoire plein
    Bonjour,

    Je souhaite effacer le contenu d'un répertoire avec un retour disant si l'opération à réussi ou pas (répertoire contenant des dossiers et fichiers). Le seul moyen que j'ai trouvé, c'est d'utiliser le type QDir et d'effacer le dossier parent avec QDir::rmdir puis de le recréer avec Qdir::mkdir.

    Seulement, il est bien spécifié dans la doc que le répertoire doit être vide pour pouvoir le supprimer, ce qui n'est pas mon cas !

    Est-ce que quelqu'un sait comment je peux arriver à mes fins ? Je trouve ça bizarre que ce ne soit pas possible à faire avec QT, il doit bien avoir un moyen non ?

    Merci pour vos réponses

    Madeline

  2. #2
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Salut, a ma connaissance QT ne fais pas cela. Il faut que tu creer toi meme une fonction récursive qui prend en paramètre un QString contenant le nom du répertoire a supprimer.

    Pour cela, tu liste les fichiers et repertoires du répertoire passe en paramètre ( regarde du cote de entryInfoList)
    Tu obtiendra la liste du contenu du dossier et pour chaque éléments,
    si c'est un fichier tu le supprime, et si c'est un dossier tu rappelle cette fonction avec le path du répertoire en paramètre.
    Enfin tu supprime le dossier qui sera donc ici vide.

    J'espère avoir été clair.

    Cordialement,
    NeoKript

  3. #3

  4. #4
    Membre averti
    Inscrit en
    Septembre 2010
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 17
    Par défaut
    Ce que tu peux faire aussi, c'est invoquer la fonciton C system() qui permet d'exécuter des commandes shell. Par exemple, sous Unix :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    system("rm -rf /chemin/vers/le/dossier/*");
    En revanche je ne sais pas si ça te permettra d'avoir une valeur de retour.

Discussions similaires

  1. Effacement de répertoires
    Par Wathelet dans le forum Windows XP
    Réponses: 7
    Dernier message: 18/07/2007, 23h11
  2. Effacer des répertoires dont le path est trop long
    Par thetraveller dans le forum Windows XP
    Réponses: 5
    Dernier message: 21/05/2007, 10h35
  3. [FTP] Impossible d'effacer un répertoire
    Par innova dans le forum Langage
    Réponses: 8
    Dernier message: 12/03/2007, 11h46
  4. Réponses: 2
    Dernier message: 10/10/2006, 19h42
  5. Effacer un répertoire sur un disque
    Par sfaxi dans le forum Oracle
    Réponses: 1
    Dernier message: 23/11/2005, 12h14

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