Я использую boost 1.52, когда пытаюсь получить файл с сетевого диска, с которого у меня нет прав для чтения. Я получаю исключение, после использования boost::filesystem::exists(fileName)
Есть ли работа вокруг лучше, чем просто делать try, catch
на каждом месте?boost :: filesystem :: существует сбой
я переключился обратно на мой старый код на данный момент:
bool FileExists(const char* fileName)
{
struct stat my_stat;
return (stat(fileName, &my_stat) == 0);
}
//boost Exists throws exception if there are no permissions for share folder
bool FileExists(const std::string& fileName)
{
return FileExists(fileName.c_str());
}
Не можете ли вы просто использовать функции, которые вы используете сейчас, заменив 'stat' на' boost :: filesystem :: exists' вместе с необходимой обработкой исключений? Тогда вам не нужно использовать try-catch в любом месте. Он изолирован в этой функции. –