Проблемы с использованием .open с объектами ifsteam - PullRequest
0 голосов
/ 23 декабря 2011

Лучший способ объяснить мою проблему, вероятно, просто показать вам мой код, потому что он настолько прост, насколько это возможно.

#include <iostream>
#include <fstream>

int main (int argc, const char * argv[])
{

    std::ifstream in;
    std::string line;
    in.open("test.txt");
    if (in.fail()) std::cout << "failed. \n";
    getline(in, line);
    std::cout << line;

    return 0;
}

Так что, когда я запускаю это, консоль возвращает "сбой". вместо открытия файла с именем test.txt, который находится в той же папке, что и мой файл .xcodeproj, и также отображается в моем навигаторе Xcode.

Я не уверен, что я неправильно понимаю этот процесс, но я подозреваю, что это будет что-то простое.

Спасибо! :)

1 Ответ

3 голосов
/ 23 декабря 2011

Файл находится в том же каталоге, что и ваш файл .xcodeproj? Ну, тут твоя проблема.

По умолчанию рабочий каталог процесса, запущенного из Xcode, будет выходным каталогом (то есть каталогом, в котором находится программа). В зависимости от вашей версии XCode это, вероятно, будет в <Project Directory>/build/Debug.

Попробуйте переместить файл туда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...