作者Qualenac (加路~)
看板C_and_CPP
標題[問題] 想請問關於寫入檔案指標的問題
時間Mon Jun 15 12:29:33 2009
在程式運行中會不斷寫入一個txt檔,
想請問是否可以將檔案指標指定於檔案最末端,
讓新增資料不斷累積寫入?
有在網路上查到似乎可以使用seekp這個指令,
但詳細用法實在不太會,
跑出來始終無法成功,程式碼如下.....
===============================================
for(int k=0;k<2;k++)
{
ofstream fout_test("test.txt");
fout_test.seekp(0,ios::end);
for(int a=0;a<5;a++)
fout_test << a;
fout_test << endl;
fout_test.close();
}
==============================================
執行出來的結果是:
01234
但我希望他出來的結果會是:
01234
01234
並隨著k增加而越來越多行這樣...
不知是我用法錯誤?還是沒有辦法這樣用呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.75.133
※ 編輯: Qualenac 來自: 122.117.75.133 (06/15 12:31)
1F:→ qazq:"test.txt", ios_base::in | ios_base::out | ios_base::app 06/15 12:48
2F:推 VictorTom:忽然發現C++我還真是不會, 用FILE相關func就會了XD 06/15 12:54
3F:推 ianfang:你幹嘛在迴圈裡開檔又關檔 把ofstream和close移出迴圈 06/15 15:22
4F:→ ianfang:然後拿掉seekp 這樣應該是你要的吧... 06/15 15:23
5F:→ Qualenac:加入q大的指令,再把seekp拿掉就成功了!非常感謝~ 06/15 19:26
6F:→ Qualenac:寫檔放迴圈是因為裡面還有讀檔的動作,抱歉沒說清楚... 06/15 19:28