2012-02-04 141 views
0
#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」。它輸出它。如果不是,則跳過該行。

+0

是你的問題如何測試字符串是否出現在行?或者如何寫入輸出流?一旦你知道如何做到這一點,這應該是微不足道的。 – templatetypedef 2012-02-04 07:54:44

+1

對你的問題不太直接,但你知道「grep」嗎? – 2012-02-04 07:55:39

+0

基本上,如果它在閱讀時在一行中找到單詞「你好」。它輸出它。如果不是,則跳過該行。 – mystycs 2012-02-04 07:57:00

回答

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

    cout << line << endl; 
} 
+0

美麗的這工作。我不知道它有一個.find部分 – mystycs 2012-02-04 08:08:27

相關問題