C++ C++;逐行读取文件:hasNextLine?

C++ C++;逐行读取文件:hasNextLine?,c++,file,io,iteration,C++,File,Io,Iteration,我正在阅读这样一个文件的内容: #include <iostream> #include <fstream> using namespace std; char line[256]; ifstream infile(filename, ios::in); if(infile){ while (infile.getline(line, 256)) { std::cout << line << std::endl;

我正在阅读这样一个文件的内容:

#include <iostream>
#include <fstream>
using namespace std;

char line[256];
ifstream infile(filename, ios::in);

if(infile){
    while (infile.getline(line, 256)) {
        std::cout << line << std::endl;
    }
}
#包括
#包括
使用名称空间std;
字符行[256];
ifstream-infle(文件名,ios::in);
如果(填充){
while(infle.getline(第256行)){

std::cout另一种方法是在2-n次迭代中做你想做的事情,而在第一次迭代中不做。我猜你想在两行之间做一些事情?

你可以使用:


如果您已经阅读了最后一行,则没有其他内容可阅读,
peek()
将返回
EOF
。反之,如果
peek()
返回其他内容,这意味着仍有数据需要读取,因此需要下一行。

逐行分析、着色、按两行分组并使用它执行其他操作,最后我希望在读取最后一行之前在控制台上获得一些输出。这与此无关,但您很少希望使用
getline的重载这需要一个指向char的指针——您通常需要
std::string行;而(std::getline(infle,line))…
if (infile.peek()!=EOF) 
   ...