Hej,
Jeżeli nie ma folderu to create_directory tworzy go, jeżeli jest folder to create_directory też nie zwraca błędu, działa wszystko poprawnie.
Nie mogę utworzyć folderu w jednej egzekucji programu jedynie w przypadku jeżeli wcześniej był jakiś plik w folderze i w związku z tym wykonał się większy kod funkcji remove_all (ona tak działa że jak są pliki w folderze to usuwa je i folder a jak nie ma plików to nie usuwa folderu). codegeneric:1 mam po create_directory.
Ma ktoś doświadczenie z kasowaniem i tworzeniem folderów z użyciem std::filesystem, o co tu chodzi?
const std::string OUTPUT_DIR = ".\\files\\output";
void cleanup() //usun cały output po poprzednim wykonaniu programu
{
std::error_code errcode;
//delete existing one
if(!std::filesystem::remove_all(OUTPUT_DIR, errcode) and errcode)
std::cout << "Cannot delete output dir, error code :" << errcode << std::endl;
//create new one
if(!std::filesystem::create_directory(OUTPUT_DIR, errcode) and errcode)
std::cout << "Cannot create output dir, error code" << errcode << std::endl;
}
workaround (za drugim razem działą, tworzy się folder w NOK scenariuszu):
//create new one
if (!std::filesystem::create_directory(OUTPUT_DIR, errcode) and errcode)
{
if(!std::filesystem::create_directory(OUTPUT_DIR, errcode) and errcode)
std::cout << "Cannot create output dir, error code" << errcode << std::endl;
}