Namespaces
Variants

std::filesystem::path:: remove_filename

From cppreference.net
path & remove_filename ( ) ;
(depuis C++17)

Supprime un seul composant de nom de fichier au format générique (tel que retourné par filename ) du chemin au format générique donné.

Après l'exécution de cette fonction, has_filename renvoie false .

Table des matières

Paramètres

(aucun)

Valeur de retour

* this

Exceptions

Peut lever des exceptions définies par l'implémentation.

Exemple

#include <filesystem>
#include <iostream>
namespace fs = std::filesystem;
int main()
{
    fs::path p;
    std::cout << std::boolalpha
              << (p = "foo/bar").remove_filename() << '\t' << p.has_filename() << '\n'
              << (p = "foo/").remove_filename() << '\t' << p.has_filename() << '\n'
              << (p = "/foo").remove_filename() << '\t' << p.has_filename() << '\n'
              << (p = "/").remove_filename() << '\t' << p.has_filename() << '\n'
              << (p = "").remove_filename() << '\t' << p.has_filename() << '\n';
}

Sortie :

"foo/"  false
"foo/"  false
"/"     false
"/"     false
""      false

Voir aussi

retourne le composant de chemin du nom de fichier
(fonction membre publique)
remplace le dernier composant du chemin par un autre chemin
(fonction membre publique)
vérifie si l'élément de chemin correspondant n'est pas vide
(fonction membre publique)