如果一行包含某些Word保存它

时间:2012-02-04 07:52:11

标签: c++ input fstream

#include <iostream>
#include <fstream>

using namespace std;

int main()
{

    ifstream  stream1("source.txt");
    string line ;
    ofstream stream2("target.txt");

        while( std::getline( stream1, line ) )
        {
                stream2 << line << endl;
                cout << line << endl;
        }


    stream1.close();
    stream2.close();    return 0;
}

我如何使这段代码成为如此,如果它在一行中找到单词“HELLO”,它将保存到stream2中整行?其余的行如果没有那个单词就不会保存到stream2。

基本上,如果它在阅读时在一行中找到单词“HELLO”。它输出它。如果没有,则跳过该行。

1 个答案:

答案 0 :(得分:1)

while( std::getline( stream1, line ) )
{
    if(line.find("hello") != string::npos)
        stream2 << line << endl;

    cout << line << endl;
}