ifstream — в C ++ после открытия файла .txt со значениями чтение файла дает мне & quot;

Вот мой код

ifstream readFile;
readFile.open("voltages.txt");

if (readFile.fail( ) )
{
cout << "\nCould not open the file ... check to see if voltages.txt exists\n";
system("pause");
return;
}

string tempString = "";
//readFile.seekg(0, ios::beg);
int idx = 0;
if (readFile.is_open())
{
while ( readFile.good() )
{
getline(readFile,tempString);
cout << tempString << endl;
}
readFile.close();
}

Если я перенесу voltages.txt в c: /, то он будет работать нормально, но у меня он сейчас находится в той же папке, что и мой .exe, и когда я устанавливаю точку останова на cout << tempString << епсИ; это появляется так же, как «». Я хотел бы сохранить его в .exe, если это возможно. Как видите, я пытался искать начало, но безуспешно. Пожалуйста, помогите этому C ++ noob! Спасибо!

2

Решение

Это может быть связано с тем, что вы пытаетесь прочитать локальный файл, когда программе требуется ссылка на файл из C: /

Вы можете проверить это, заменив voltages.txt с C:/pathToVoltages/voltages.txt

Я бы предложил передать файл в ваш исполняемый файл, выполнив это:

int main(int argc, char argv[]){
ifstream readFile;
readFile.open(argv[2]);
/*Rest of the code*/

Это предполагает, что путь к файлу задается первым аргументом, который вы даете программе, как в:

./program pathToFile/voltages.txt

Надеюсь это поможет

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector