Vérifier si un répertoire existe

C++:
Vérifier si un répertoire existe

Comment faire :

Dans le C++ moderne (C++17 et au-delà), vous pouvez utiliser la bibliothèque filesystem pour vérifier si un répertoire existe. Elle offre une manière simple et standardisée d’effectuer des opérations sur le système de fichiers, y compris la vérification de l’existence d’un répertoire.

#include <iostream>
#include <filesystem>

namespace fs = std::filesystem;

int main() {
    const fs::path dirPath = "/chemin/vers/repertoire";

    if (fs::exists(dirPath) && fs::is_directory(dirPath)) {
        std::cout << "Le répertoire existe." << std::endl;
    } else {
        std::cout << "Le répertoire n'existe pas." << std::endl;
    }

    return 0;
}

Sortie d’exemple si le répertoire existe :

Le répertoire existe.

Sortie d’exemple si le répertoire n’existe pas :

Le répertoire n'existe pas.

Pour les projets qui n’utilisent pas encore C++17 ou pour des fonctionnalités supplémentaires, la bibliothèque Boost Filesystem est un choix tiers populaire qui offre une fonctionnalité similaire.

#include <iostream>
#include <boost/filesystem.hpp>

namespace fs = boost::filesystem;

int main() {
    const fs::path dirPath = "/chemin/vers/repertoire";

    if (fs::exists(dirPath) && fs::is_directory(dirPath)) {
        std::cout << "Le répertoire existe." << std::endl;
    } else {
        std::cout << "Le répertoire n'existe pas." << std::endl;
    }

    return 0;
}

En utilisant Boost Filesystem, la sortie serait identique à l’exemple du système de fichiers C++17, en fonction de l’existence du répertoire au chemin spécifié.