Сделайте так, чтобы мой оператор catch возобновил мой код: итерация каталогов с помощью файловой системы - PullRequest
1 голос
/ 21 октября 2019

Я создал свой текущий код, который должен перебирать все каталоги, подкаталоги и файлы с диска C. Вот мой код:

try
{
    for (auto& p : fs::recursive_directory_iterator(path))
    {



        fs::path pathp = p.path();


        std::cout << pathp << '\n';
    }
}
catch (std::exception & ex)
{


    std::cout << "Error - " << ex.what() << "\n";
    system("PAUSE");

Так что в настоящее время он делает, когда их ошибка, она будет ловить ее. Но тогда программа полностью прекращает выполнение. Верхние 2 ошибки - это уни-коды в файлах / каталогах, или у него нет прав доступа к определенным каталогам, таким как, например, Intel. Моя программа работает с разрешения администратора. Есть ли способ, которым я могу сделать это, чтобы он мог просто пропустить каталог, где ошибка и продолжить с кодом? Помощь приветствуется! Спасибо!

...