Re: Ifstream 讀取的問題

看板C_and_CPP作者 (Dannvix)時間15年前 (2010/06/05 17:54), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《RaiGend0519 (鮮度減半,老了0.5歲囧)》之銘言: : 現在我有一個.dat : 裡面有一行字組是\&HarryPotter&\\&JK&\2000 1 123456789 : 第一個是書名 : 然後是作者 : 再來是年份、版序、國際書碼 : 如果我現在想要用搜尋國際書碼的方式 : 來刪掉這一行字組 : 我該怎麼做呢? : 遇到的瓶頸是 : \& &\這個在讀取時不知道要怎麼繞過去 : 如果是空格的話就會乖乖讀近來 : 加了這兩個符號不知道該怎麼辦... 印象中國際書碼的長度似乎是固定的,所以利用 substr() 來做... #include <iostream> #include <fstream> #include <string> using namespace std; int main (void) { ifstream fin ("input.txt"); string str; while (getline(fin, str)) { if (str.substr(str.length()-9).compare("123456789") != 0) cout << str << endl; } return 0; } ------------------------------ input.txt: \&HarryPotter&\\&JK&\2000 1 123456789 \&The Da VinCi Code&\\&Dan Brown&\2010 5 987654321 輸出: \&The Da VinCi Code&\\&Dan Brown&\2010 5 987654321 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.227.83.223 ※ 編輯: Dannvix 來自: 125.227.83.223 (06/05 17:57)
文章代碼(AID): #1C2XxZJy (C_and_CPP)
文章代碼(AID): #1C2XxZJy (C_and_CPP)