Как гласит заголовок, я сканирую файлы в каталоге через каждые несколько секунд, используя цикл.Примерно так ...
if (now >= nextTime)
{
for (const auto& entry : fs::directory_iterator(folderName))
{
filename.push_back(entry.path().filename().u8string());
totalFilesNum++;
}
}
...
По сути, он повторяет один и тот же код каждые несколько секунд nextTime
и делает его супер интерактивным.Он выводит данные файла (имя, размер и т. Д.) Каждые несколько секунд.Скажем, я вручную добавляю новый файл в каталог, это тоже учитывается.
Пока все хорошо.Теперь проблема в том, когда я пытаюсь удалить один из файлов в каталоге.Это не позволяет мне сделать это и вместо этого выдает unhandled exception
.Ниже приведен мой код для удаления файла.
void RemoveFile()
{
std::string folderName = "files";
for (const auto& entry : fs::directory_iterator(folderName))
{
if (entry.path().filename() == "25-Sep-19 9 03 18 PM.jpeg")
{
std::filesystem::remove(entry.path().c_str());
}
else {}
}
Для записи, используя тот же код, я пытался удалить / удалить файл в другом каталоге, и он работает нормально.Просто изменили каталог std::string folderName = "files_B"
с тем же именем файла, и он был удален.Любая помощь приветствуется.Спасибо.