Я пытаюсь открыть файл для чтения:
cout << file_path << endl;
fstream myfile(file_path.c_str(), std::ios_base::in);
if (myfile.is_open())
cout << "Yahhy!! file Opend successfully" << endl;
else
cout << "Wohoo!! Wrong path" << endl;
Выход:
/home/umar/Desktop/DateFile/dha_dataset.gfp
Wohoo!! Wrong path
Путь верен - файл существует, но он не открывает файл. Является ли проблема в моем коде или в другом месте?
Я работаю в Ubuntu.
Синтаксис выглядит корректно, что оставляет два варианта:
Либо файл не существует, либо у вас нет разрешения на чтение.
Чтобы проверить, выполняются ли с терминала следующие команды:
ls -l /home/umar/Desktop/DateFile/dha_dataset.gfp
Посмотрите на результаты, они должны выглядеть примерно так:
ls: cannot access /home/umar/Desktop/DateFile/dha_dataset.gfp: No such file or directory
или:
-rw-rw-rw xxx yyy 1025 Oct 9 2013 dha_dataset.gfp
Первый результат означает, что путь неверен.
Второй результат означает, что путь правильный, поэтому просмотрите разрешения. Если у вас нет разрешения на чтение... (один из r
s), вы не сможете открыть файл.