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é.