Почему вылетает исключение при копирование файла (filesystem C++)
Мне нужно создать функцию, принимающую директорию. С этой директории, все файлы формата txt переместить в папку test.
Снизу виден код, вылетает ошибка.
vector<string> files = getAllFiles(dir);
for (auto f : files) {
if (f.substr(f.find_last_of(".") + 1) == "txt") {
filesystem::path from(f), to("D:\\books\\test");
filesystem::rename(from, to);
}
}
В векторе хранится ссылки на файл. Получил я их таким способом -
vector<string> getAllFiles(string dir)
{
vector<string> files;
for (auto i = filesystem::directory_iterator(dir); i != filesystem::directory_iterator(); i++)
{
if (!is_directory(i->path()))
{
files.push_back(i->path().string());
}
else
continue;
}
return files;
}
