Just a Computer Graphics Studio & My Life

現在寫大一點的程式,輸入或輸出資料量大的時候,我們不太想花時間去處理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)

  1. 請問一下如果有幾個資料夾…,試問如何讀取資料夾再到下一層讀取檔案?

    喜歡

  2. 你好,我參照你的程式碼之後,想問個問題.
    如果要讀入a.txt檔,之後改寫txt裡面的內容(刪除不必要的字串,留下要的字串),
    之後把要留下的字串另外存成一個b.txt檔,
    請問這樣應該怎麼寫比較適合呢?

    謝謝

    喜歡

  3. […] 接續剛才寫的開啟檔案和寫入檔案,這次換寫開啟檔案讀取檔案的程式,依然很簡單,只是稍有差別。 […]

    喜歡

  4. 想問一下
    Dev-C++ 有清空txt的語法嗎?

    喜歡

    • 若你想清空xxx.txt,語法:
      fp.open("xxx.txt", ios::out);//開啟檔案
      就可以做到。
      效果是:無論xxx.txt是否存在(不存在則創造xxx.txt),
      都會在xxx.txt開啟後將其內容清空。

      喜歡

  5. […] 接續剛才寫的開啟檔案和寫入,這次換寫開啟檔案讀取的程式,依然很簡單,只是稍有差別。 […]

    喜歡

發表留言

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

你正使用 WordPress.com 帳號留言。 登出 / 變更 )

Twitter picture

你正使用 Twitter 帳號留言。 登出 / 變更 )

Facebook照片

你正使用 Facebook 帳號留言。 登出 / 變更 )

Google+ photo

你正使用 Google+ 帳號留言。 登出 / 變更 )

連結到 %s

標籤雲

%d 位部落客按了讚: