如果我有这样的文本文件: 一个 b C d
如何在没有计数循环的情况下读取第n行,所以如果行号是3,我可以得到字母c。
答案 0 :(得分:0)
唯一的方法是知道第三行开始的偏移量(以字节为单位)。
您可以为此文件构建“索引”(遍历文件一次并存储每行开始的位置)。或者,如果您知道所有行都具有相同的长度,则可以计算/猜测偏移量。
如果没有此先验知识,则无法从文件中读取任意数字的行。
答案 1 :(得分:0)
这里,n从0开始
string line;
for (streamsize i = 0; i <= n; i++)
{
if (! getline(myfile, line))
{
// some issue occured, probably not enough lines
}
}
// line variable now contains line n