Чтение числа из файла C ++ - PullRequest
3 голосов
/ 27 июня 2010

У меня есть файл с простым номером, например:

66

или

126

Как мне прочитать его до значения int в C ++?

Обратите внимание, что файл может также содержать несколько пробелов или вводить после числа.

Я начал так:

int ReadNumber() 
{
    fstream filestr;
    filestr.open("number.txt", fstream::in | fstream::app);

    filestr.close()
}

Как продолжить?

Спасибо.

Ответы [ 3 ]

5 голосов
/ 27 июня 2010

Я действительно не знаю, почему люди используют fstream с установленными флагами, когда он хочет только вводить данные.

#include <fstream>
using namespace std;

int main() {
    ifstream fin("number.txt");
    int num;
    fin >> num;
    return 0;
}
4 голосов
/ 27 июня 2010
int ReadNumber() 
{
    fstream filestr;
    int number;
    filestr.open("number.txt", fstream::in | fstream::app);
    filestr >> number;
    return number;
} // filestr is closed automatically when it goes out of scope.
2 голосов
/ 27 июня 2010

Вот хитрый трюк: вы можете перенаправить стандартный ввод / вывод, используя freopen.

#include <iostream>
using namespace std;

int readNumber(){
    int x;
    cin>>x;
    return x;
}

int main(){
    freopen ("number.txt","r",stdin);
    cout<<readNumber();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...