我有一个包含许多行的纯文本文件,我想打印具有特定字符串的行。我怎样才能做到这一点?
答案 0 :(得分:1)
您可以逐行读取文件:
std::vector<std::string> lines;
std::ifstream myfile("example.txt");
if(myfile.is_open())
{
while(myfile.good())
{
std::string line;
getline(myfile, line);
lines.push_back(line);
}
myfile.close();
}
然后,您将循环遍历所有行,并搜索您的单词。如果找到,则将该行打印到控制台。
for(unsigned int i = 0; i < lines.size(); ++i)
{
if(lines[i].find("your_word") != std::string::npos)
std::cout << lines[i].c_str() << std::endl;
}
来源:
答案 1 :(得分:0)
阅读第一行,搜索单词。如果它在那里,存储它(或打印它),否则跳到下一行。这样做直到文件结束。