跳轉至內容

C++ 程式設計/程式碼/標準 C 庫/函式/fopen

來自華夏公益教科書,開放的書籍,構建開放的世界
語法
#include <cstdio>
FILE *fopen( const char *fname, const char *mode );

fopen() 函式開啟由 fname 指定的檔案,並返回與該檔案關聯的流。如果出現錯誤,fopen() 返回 **NULL**。mode 用於確定如何處理檔案(即用於輸入、輸出等)。

mode 包含最多三個字元。第一個字元是“r”、“w”或“a”,它表示檔案是如何開啟的。以讀取方式開啟的檔案從檔案開頭開始允許輸入。對於寫入,檔案將被擦除。對於追加,檔案將被保留,並且寫入檔案將從結尾開始。第二個字元是“b”,是可選的標誌,它以二進位制方式開啟檔案 - 省略任何來自不同文字格式的轉換。第三個字元“+”是可選標誌,它允許對檔案進行讀寫操作(但檔案本身以相同的方式開啟)。

模式 含義 模式 含義
"r" 以讀取方式開啟文字檔案 "r+" 以讀寫方式開啟文字檔案
"w" 建立文字檔案以供寫入 "w+" 建立文字檔案以供讀寫
"a" 追加到文字檔案 "a+" 以讀寫方式開啟文字檔案
"rb" 以讀取方式開啟二進位制檔案 "rb+" 以讀寫方式開啟二進位制檔案
"wb" 建立二進位制檔案以供寫入 "wb+" 建立二進位制檔案以供讀寫
"ab" 追加到二進位制檔案 "ab+" 以讀寫方式開啟二進位制檔案

一個例子

int ch;
FILE *input = fopen( "stuff", "r" );
ch = getc( input );
相關主題
fclose - fflush - fgetc - fputc - fread - freopen - fseek - fwrite - getc - getchar - setbuf
華夏公益教科書