проверка на существование файла си

363
28 января 2017, 10:18

Как проверить на существование файла си?

try {
    if ((fopen_s(&f, filename, "r") != NULL) {     //так не получается
        cout << "File is open" << endl;
        fclose(f);
    }
    else
        throw (FileOpenError(filename, "file wasn't open!"));   
}
catch (FileOpenError& ex) {
    cout << ex.what();
}
Answer 1

проблема решена с помощью errno_t

errno_t err;
FILE *f;
char* filename = "my.txt";
try {
    err = fopen_s(&f, filename, "r");
    if(err == 0){
        cout << "File is open" << endl;
        fclose(f);
    }
    else
        throw (FileOpenError(filename, "file wasn't open!"));   
}
catch (FileOpenError& ex) {
    cout << ex.what();
}
READ ALSO
Инициализация static в классе

Инициализация static в классе

Может кто-нибудь дать техническое объяснение, почему нельзя инициализировать статические переменные внутри класса, а в функциях можно?

380
c++ получение данных содержащих кириллицу из oracle через ODBC

c++ получение данных содержащих кириллицу из oracle через ODBC

В БД Oracle хранятся данные в которых присутствует кириллица, CHARACTERSET CL8MSWIN1251Забираю посредством ODBC, вместо кириллицы - знаки вопроса

313