提问人:AlphaAl 提问时间:2/13/2016 更新时间:2/13/2016 访问量:96
如何从 .txt 获取特定行 (C++)
How to get a specific line from a .txt (C++)
问:
我需要一些帮助从名为“test.txt”的 txt 文件中获取第一行,我已经发现了 getline 函数,但我不确定为什么我的代码不起作用或我需要做什么。我想从 .txt 文件中获取第一行,但由于某种原因它打印了“t”。如果我处理不当,请随时纠正我。这是我正在使用的代码:
string FirstLine;
ifstream File("test.txt");
string line;
if (File)
{
while (getline(File, line))
{
FirstLine = line[0];
}
File.close();
}
cout << FirstLine;
这是 .txt 文件:
这是第 1 行
这是第 2 行
这是第 3 行
答:
2赞
user4332327
2/13/2016
#1
如果您只想要第一行:
string line;
getline(File, line);
然后,文件的第一行将存储为字符串line
要获取所有行(逐行):
while(getline(File, line).good())
//do something with line
0赞
LarryF
2/13/2016
#2
string FirstLine;
ifstream File("test.txt");
string line;
if (File)
{
getline(File, line);
FirstLine = line;
File.close();
}
cout << FirstLine;
是您需要对代码进行的最少更改,以使其执行您想执行的操作。但是,上述代码示例还有很大的改进空间。例如,为什么要创建两个字符串 , 和 ,只是传递给函数。我只是修改了您提供的内容,以突出显示错误在哪里。希望这会有所帮助...line
FirstLine
FirstLine
getline()
评论
line[0]
FirstLine = line;
将读取行分配给 ,但使用 while 循环,您将一直这样做,直到文件结束,并且将是最后一行。FirstLine
FirstLine