在一个假设的场景中,我不知道文件中有多少项。我将使用哪种循环来读取文件中的项目,直到文件结束?下面是我当前使用的代码。
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream inputFile;
int num;
inputFile.open("TenNos.txt");
cout << "Reading data from the file. n";
inputFile >> num;
cout << num << endl;
return 0;
}
您应该添加fstream以便能够读取文件,然后使用while循环读取文件的内容,直到结束。
#include <fstream> // for files
#include <iostream> // printing on screen by default
int main()
{
ifstream inputFile;
int num;
inputFile.open("TenNos.txt");
cout << "Reading data from the file. n";
while(inputFile >> num)
cout << num << endl;
return 0;
}
while (inputFile >> num)
{
cout << num << endl;
}
将从文件中读取并打印int
s,直到找到不是int
的内容、文件结束、文件未打开或由于其他原因导致文件无法读取。
检查此处记录的各种状态标志将帮助您确定读取停止的原因。
std::istream中的更多内容。操作员手册上的一页解释了while (inputFile >> num)
的工作原理。
如果在检测到错误后,您希望清理并继续,请确保已读取clear()
和ignore()