std有个函数叫做getline,它的作用是从输入文件中读取每一行,并且将该行存入一个字符串中,每一行用换行符(\n)识别。
它的原型是,istream& getline (istream& is, string& str);
如果想遍历某个输入文本文件,可以写如下代码:#include
#include
#include
using namespace std;
ifstream input_file("input.txt");
string single_line;
while(getline(input_file, single_line)) {
cout <
}
当遇到文件结尾时,该函数自动停止提取字符串,则相应的while循环条件判断为假,跳出循环。
下一步是挑出那些符合一定模式的行,比方说挑出所有包含一个子串的行。这时,要用到string类的find函数。if(single_line.find("node id") != string::npos){
//perform operations
}