Namespaces
Variants

std::experimental::filesystem:: remove, std::experimental::filesystem:: remove_all

From cppreference.net
Défini dans l'en-tête <experimental/filesystem>
bool remove ( const path & p ) ;
bool remove ( const path & p, error_code & ec ) ;
(1) (filesystem TS)
std:: uintmax_t remove_all ( const path & p ) ;
std:: uintmax_t remove_all ( const path & p, error_code & ec ) ;
(2) (filesystem TS)
1) Le fichier ou le répertoire vide identifié par le chemin p est supprimé comme par la fonction POSIX remove . Les liens symboliques ne sont pas suivis (le lien symbolique est supprimé, pas sa cible).
2) Supprime le contenu de p (s'il s'agit d'un répertoire) et le contenu de tous ses sous-répertoires, récursivement, puis supprime p lui-même comme si on appliquait de manière répétée la fonction POSIX remove . Les liens symboliques ne sont pas suivis (le lien symbolique est supprimé, pas sa cible).

Table des matières

Paramètres

p - chemin à supprimer
ec - paramètre de sortie pour le rapport d'erreur dans la surcharge non-lancante

Valeur de retour

1) true si le fichier a été supprimé, false s'il n'existait pas. La surcharge qui prend l'argument error_code & retourne false en cas d'erreurs.
2) Retourne le nombre de fichiers et répertoires qui ont été supprimés (ce qui peut être zéro si p n'existait pas initialement). La surcharge qui prend l'argument error_code & retourne static_cast < std:: uintmax_t > ( - 1 ) en cas d'erreur.

Exceptions

The overload that does not take an error_code & parameter throws filesystem_error on underlying OS API errors, constructed with p as the first argument and the OS error code as the error code argument. std:: bad_alloc **Note:** Le texte a été laissé en anglais car : 1. Il s'agit de code C++ (`std::bad_alloc`) 2. Les balises HTML et attributs sont préservés comme demandé 3. C'est un terme technique spécifique au C++ qui ne doit pas être traduit may be thrown if memory allocation fails. The overload taking an error_code & parameter sets it to the OS API error code if an OS API call fails, and executes ec. clear ( ) if no errors occur. This overload has
noexcept spécification :
noexcept

Notes

Sur les systèmes POSIX, cette fonction appelle généralement unlink et rmdir selon les besoins, tandis que sur Windows RemoveDirectoryW et DeleteFileW .

Exemple

#include <cstdint>
#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    fs::path dir = fs::temp_directory_path();
    fs::create_directories(dir / "abcdef/example");
    std::uintmax_t n = fs::remove_all(dir / "abcdef");
    std::cout << "Deleted " << n << " files or directories\n";
}

Sortie possible :

Deleted 2 files or directories

Voir aussi

efface un fichier
(fonction)