我的文本文件包含以下整数:123 879709789 43536 8768768
我想在一个数组索引中读取整数,如array [1] = 123 array [2] = 879709789。
这是我尝试过的:
ifstream myfile("numbers.txt");
if (myfile.is_open())
{
while ( myfile.good() && !myfile.eof() )
{
for(i=1; i<myfile.eof(); i++)
{
myfile >> ar[i];
if(ar[i]=="")
{
i++;
}
}
}
}
答案 0 :(得分:3)
像这样:
#include <vector>
#include <fstream>
#include <iterator>
std::ifstream infile("myfile.txt"); // or just use `std::cin`
std::vector<int> v(std::istream_iterator<int> { infile },
std::istream_iterator<int> { } );
现在v
包含您的所有号码。如果沿途的任何地方都有输入错误,您将看不到它,输入将停止。如果这是一个问题,请使用getline
/ istringstream
方法,正如本网站上数百个类似问题中所记录的那样。