Comment éviter la suppression de répertoire sur remove_all avec les Bibliothèques Boost?
J'utilise boost::filesystem::remove_all opération pour supprimer le contenu d'un répertoire.
Il supprime correctement le contenu, mais, en tant qu'état par Boost système de fichiers de la Documentation, il supprime également le répertoire lui-même.
Est-il un moyen facile de rester avec le répertoire malgré qu'elle est vide?
Vous pouvez également créer directement le répertoire après la remove_all
Je pense que l'une des solutions pourrait être d'itérer sur le dossier du contenu et de supprimer chaque fichier.
RvdK, vous avez raison, c'est la solution que je suis en ce moment... je me demande juste pourquoi Stimuler les Gens ne comprennent pas certains "drapeau" pour éviter de supprimer le répertoire remove_all opération...
Je pense que l'une des solutions pourrait être d'itérer sur le dossier du contenu et de supprimer chaque fichier.
RvdK, vous avez raison, c'est la solution que je suis en ce moment... je me demande juste pourquoi Stimuler les Gens ne comprennent pas certains "drapeau" pour éviter de supprimer le répertoire remove_all opération...
OriginalL'auteur Santiago Agüero | 2013-01-30
Vous devez vous connecter pour publier un commentaire.
Je pense que le meilleur moyen est d'effectuer une itération à l'intérieur du dossier et effectuer remove_all pour chaque élément. Exemple de code:
La documentation n'indique pas que l'itérateur est invalidé lorsque l'élément de référence est supprimée. J'ai trouver information qui indique que l'itération de supprimer le contenu semble être officiellement prise en charge de cas d'utilisation. Notez que n'importe quel fichier peut être externe supprimé à tout moment, de sorte que le il serait très dangereux d'invalider les itérateurs juste pour cette raison.
OriginalL'auteur J. Calleja