0

整数ごとに読み取れるようにファイルを読みたい。私はそれを一行ずつ読みましたが、整数ごとに読みたいです。

これは私のコードです:

void input_class::read_array()
{    
        infile.open ("time.txt");
        while(!infile.eof()) // To get you all the lines.
        {
            string lineString;
            getline(infile,lineString); // Saves the line in STRING
            inputFile+=lineString;
        }
        cout<<inputFile<<endl<<endl<<endl;
        cout<<inputFile[5];

        infile.close();
}
4

2 に答える 2

3

これを行う必要があります:

#include <vector>

std::vector<int> ints;
int num;
infile.open ("time.txt");
while( infile >> num)
{
    ints.push_back(num);
}

ループは、EOF に達するか、整数以外を読み取ろうとすると終了します。ループがどのように機能するかについて詳しく知るには、ここここ、およびここで私の答えを読んでください。

これを行う別の方法は次のとおりです。

#include <vector>
#include <iterator>

infile.open ("time.txt");
std::istream_iterator<int> begin(infile), end;
std::vector<int> ints(begin, end); //populate the vector with the input ints
于 2012-04-26T14:29:39.087 に答える
0

次を使用して fstream から int に読み取ることができますoperator>>

int n;
infile >> n;
于 2012-04-26T14:27:39.560 に答える