以下代码旨在遍历我先前打开的文件的最后十行。我认为seekg
函数引用二进制文件,并且仅处理单个字节的数据,因此这可能是我的问题。
//Set cursor to 10 places before end
//Read lines of input
input.seekg(10L, ios::end);
getline(input, a);
while (input) {
cout << a << endl;
getline(input, a);
}
input.close();
int b;
cin >> b;
return 0;
}
我想做的另一种方法是只计算文件最初循环通过的次数,然后减去十,然后计算该次数,然后输出下一个十,但这似乎很广泛我想要做。
是否有类似
seekg
的内容会转到文本文件中的特定行?还是应该使用上面建议的方法?编辑:我回答了我自己的问题:循环的事情就像6多行代码。
最佳答案
向后搜索换行符10次,或者直到文件光标小于或等于零为止。
关于c++ - 从C++文件中读取特定行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50310249/