表 1 檔案模式標誌
檔案模式標誌
含 義追加:輸出將始終發生在檔案的末尾
ios::ate
最後:輸出最初在檔案的末尾進行
ios::binary
二進位制:讀取或寫入檔案的資料是二進位制形式的
ios::in
輸入:檔案將允許輸入操作。如果檔案不存在,開啟將失敗
ios::out
輸出:檔案將允許輸出操作。如果檔案不存在,則建立乙個給定名稱的空檔案
ios::trunc
截斷:如果開啟的檔案存在,其內容將被丟棄,其大小被截斷為零
ios::in | ios::out 丨 ios::ate
以下是使用 fstream 開啟 3 個檔案執行輸入、輸出和輸入輸出的示例:
fstream infile, outfile, inoutfile;
infile.open("in.txt", ios::in);
outfile.open ("out.txt", ios::out);
outfile.open("inout.txt", ios::in | ios::out);
使用建構函式開啟檔案
ifstream、ofstream 和 fstream 這 3 個流類都有初始化建構函式,使用其中的乙個初始化建構函式即可在單個語句中建立流物件並開啟乙個檔案:
fstream outfile("inout.txt", ios::in | ios::out);
c 檔案開啟模式的有效組合
開啟模式 in 開啟檔案時做讀操作 out 開啟檔案時做寫操作 ate 開啟檔案後立即將檔案定位在檔案尾 trunc 開啟檔案時清空已存在的檔案流 binary 以二進位制模式進行io操作 有效組合 並不是所有的開啟模式都可以同時制定,有些模式組合是沒有意義的,例如 in和trunc,準備讀取檔案流...
c 檔案開啟模式的有效組合
開啟模式 in 開啟檔案時做讀操作 out 開啟檔案時做寫操作 ate 開啟檔案後立即將檔案定位在檔案尾 trunc 開啟檔案時清空已存在的檔案流 binary 以二進位制模式進行io操作 有效組合 並不是所有的開啟模式都可以同時制定,有些模式組合是沒有意義的,例如 in和trunc,準備讀取檔案流...
linux檔案開啟模式
檔案開啟 int open const char pathname int flags mode t mode 普通方式 canonical mode flags中沒有設定o sync and o direct。這種方式中read是阻塞呼叫 blocking call 等到磁碟資料讀取完畢後返回 w...