我是c ++的新手,我有一个问题。我正在研究fstream。我有一个data.txt文件有这样的内容
[exe1]
1 0 2 9 3 8 4 7 5 6
[exe2]
1 0 2 9 3 8 4 7 5 6:0
[exe3]
23
[exe4]
Micheal
我的问题是如何读取特定行,如第2行:
1 0 2 9 3 8 4 7 5 6.
提前致谢
答案 0 :(得分:5)
如果找到你的专线的唯一方法是在其中搜索一些数据,那么你必须阅读每一行,直到找到感兴趣的一行:
std::ifstream fs("data.txt");
std::string line;
while(std::getline(fs, line)) {
if ( line.find("[exe2]") != std::string::npos )
{
if ( std::getline(fs, line) ) {
// line found
// line should contain "1 0 2 9 3 8 4 7 5 6:0"
break;
}
}
}