現在寫大一點的程式,輸入或輸出資料量大的時候,我們不太想花時間去處理IO,尤其是在批次處理的情況下,不斷地重複同樣的動作,不但浪費時間又會很無聊,於是把想要輸入的資料先存入檔案,再由程式來讀取檔案,接著若有輸出的資料,則程式開啟檔案寫入檔案,待所有工作執行完畢,再去檔案查詢結果。
廣告
現在年紀大了,一陣子沒有寫開檔、讀檔的程式,就會忘了怎麼寫@@;於是乎先寫起來,等哪天要用卻忘記的時候,再來這邊搜尋:)
/** Theme: Open File and Write Compiler: Dev C++ 4.9.9.2 Date: 100/05/31 Author: ShengWen Blog: https://cg2010studio.wordpress.com/ */ #include<iostream> #include<fstream> using namespace std; int main(){ char filename[]="HappyDay.txt"; fstream fp; fp.open(filename, ios::out);//開啟檔案 if(!fp){//如果開啟檔案失敗,fp為0;成功,fp為非0 cout<<"Fail to open file: "<<filename<<endl; } cout<<"File Descriptor: "<<fp<<endl; fp<<"Hello HappyMan!!"<<endl;//寫入字串 fp.close();//關閉檔案 system("pause"); return EXIT_SUCCESS; }
廣告
如果開啟檔案成功,fp會傳回非0值。
這裡ios::out表示無論有無HappyDay.txt檔存在,都會把HappyDay.txt檔清空,若想要接續寫入HappyDay.txt檔,則必須將之改為ios::out|ios::app。
廣告
Comments on: "[C++] 開啟檔案和寫入檔案 (Open File and Write File)" (8)
請問一下如果有幾個資料夾…,試問如何讀取資料夾再到下一層讀取檔案?
讚讚
你好,我參照你的程式碼之後,想問個問題.
如果要讀入a.txt檔,之後改寫txt裡面的內容(刪除不必要的字串,留下要的字串),
之後把要留下的字串另外存成一個b.txt檔,
請問這樣應該怎麼寫比較適合呢?
謝謝
讚讚
你可以先讀取a.txt裡所有文字,接著去找出你要留下的字串,然後開啟另一個新的檔案叫做b.txt,最後將字串輸出到該檔案即可喔! 😉
讚讚
非常感謝您百忙之中抽空回覆我,資訊對我來說很有用,
不知道有類似的範例可以參考嗎?謝謝
讚讚
[…] 接續剛才寫的開啟檔案和寫入檔案,這次換寫開啟檔案讀取檔案的程式,依然很簡單,只是稍有差別。 […]
讚讚
想問一下
Dev-C++ 有清空txt的語法嗎?
讚讚
若你想清空xxx.txt,語法:
fp.open("xxx.txt", ios::out);//開啟檔案
就可以做到。
效果是:無論xxx.txt是否存在(不存在則創造xxx.txt),
都會在xxx.txt開啟後將其內容清空。
讚讚
[…] 接續剛才寫的開啟檔案和寫入,這次換寫開啟檔案讀取的程式,依然很簡單,只是稍有差別。 […]
讚讚