推 LPH66:先讀 然後測 .eof() 是 true 就是沒了 04/01 21:35
→ rock1985:要用while迴圈包嗎? 因為我要同時要抓兩個檔案的第一行 04/01 21:43
→ rock1985:我本來想用while(!tmp1.eof() || !tmp2.eof()) 04/01 21:53
→ rock1985:但是覺得這樣寫不好,還是說用getline? 04/01 21:54
→ tropical72:while(!tmp1.eof() && !tmp2.eof()) {.....} 04/01 22:05
→ tropical72:跳出來,再把不到eof的檔案(剩下的都比較大)輸出完 04/01 22:06
→ loveme00835:個人偏好while(tmp1.good() && tmp2.good()) .. 04/01 22:07
→ loveme00835:比較直觀, 開檔時也以呼叫用建構子來做, 開不成那整 04/01 22:08
推 tropical72:推樓上 (個人純粹對C++開讀檔不熟 XD) 04/01 22:08
→ loveme00835:個物件也廢掉, 還有一點需要注意, 物件如果會被命名 04/01 22:08
→ loveme00835:成 tempX, 表示他們根本沒有「存在」的必要 04/01 22:09
→ rock1985:謝謝大家的意見 我現在還有一個問題 我剛剛看tjjh大的 04/01 22:37
→ rock1985:code, 發現因為每一輪都會讀進東西,所以會有東西可能沒 04/01 22:39
→ rock1985:寫進檔案就被刷掉了, 例如 1.txt 的00064607這一筆 04/01 22:40
→ tjjh89017:抱歉剛剛沒看到錯誤,應該是這樣才對 04/01 22:45
→ rock1985:我自己可能沒講清楚 所以我有參考你的修改一下 04/01 22:46
→ rock1985:實在太感謝你了 04/01 22:46
→ rock1985:可以幫我看一下嗎 多了比較 在決定下一輪要抓哪一筆 04/01 22:49
→ tjjh89017:真沒想到會有幫助XDD 04/01 22:49
→ tjjh89017:Line2的if我想應該放在line12的if裡面,因為有可能會該 04/01 22:55
→ tjjh89017:資料即為檔案的最後一筆,可能會使的最後一筆資料未輸出 04/01 22:57
→ rock1985:感謝你~~~ 04/01 23:11
→ tjjh89017:不客氣~~~只是非常驚訝能在這幫上忙~~~XDD 04/01 23:14
→ rock1985:哈哈 現在再看一個問題 發現最後一筆好像會寫2次到檔案 04/01 23:16
→ rock1985:發現最後一筆的資料會跑兩次 兩個檔案都一樣 XD 04/01 23:18
→ rock1985:不過看不太出來是哪邊多跑一次了 04/01 23:29
我現在遇到一個問題
我有很多的檔案要兩兩合在一起
但是我現在程式會掛掉 我覺得可能是vector的部分有問題
直行到後面就直接掛掉了,所以我看不太出來錯誤訊息
不過我覺得是vector出錯了
我想要把東西兩兩合併 到最後只會剩下一個檔案
不過目前好像有問題
vector不能動態的一直在後面push_back東西進去嗎?? 還是說這邊改用queue
會比較好一點
謝謝大家
http://codepad.org/iTKZ2o7q code
http://ppt.cc/beWl list.txt
※ 編輯: rock1985 來自: 108.21.124.118 (04/02 00:26)
→ tjjh89017:Line 39:list.begin()是不是該改成vlist.begin(),還有 04/02 13:26
→ tjjh89017:list.end()改成vlist.end() 04/02 13:26