Dateien löschen mit der C++17-filesystem-Bibliothek

This post is also available in: enEnglish (Englisch)

Um eine Datei (zum Beispiel test.txt) in C++ zu löschen benutze remove aus der C++17-filesystem-Bibliothek:

remove("test.txt");

Vollständiges Beispiel:

#include <experimental/filesystem>
using namespace std::experimental::filesystem;

int main() {
    remove("test.txt");
}

Mit GCC musst du die Datei wie Folgt kompilieren:

g++ -o delete-cpp17 delete-cpp17.cpp -lstdc++fs

Die stdc++fs-Bibliothek muss gelinkt werden, um die Funktionen aus der C++17-Filesystem-Bibliothek einzubinden.

remove löscht Verzeichnisse nicht rekursiv, also können nur leere Verzeichnisse gelöscht werden! Benutze für das Löschen eines Verzeichnisses inklusive aller Unterverzeichnisse und darin enthaltenen Dateienremove_all oder lies unseren Post dazu: Dateien und Ordner rekursiv löschen mit der C++17-filesystem-Bibliothek