fopen函式用來開啟乙個檔案,其呼叫的一般形式為:
檔案指標名=fopen(檔名,使用檔案方式);
其中,
「檔案指標名」必須是被說明為file 型別的指標變數;
「檔名」是被開啟檔案的檔名;
「使用檔案方式」是指檔案的型別和操作要求。
「檔名」是字串常量或字串陣列。
例如:
file *fp;
fp=("file a","r");
其意義是在當前目錄下開啟檔案file a,只允許進行「讀」操作,並使fp指向該檔案。
又如:
file *fphzk
fphzk=("c://hzk16","rb")
其意義是開啟c驅動器磁碟的根目錄下的檔案hzk16,這是乙個二進位制檔案,只允許按二進位制方式進行讀操作。兩個反斜線「// 」中的第乙個表示轉義字元,第二個表示根目錄。
使用檔案的方式共有12種,下面給出了它們的符號和意義。
檔案使用方式
意義 「rt」
唯讀開啟乙個文字檔案,只允許讀資料
「wt」
只寫開啟或建立乙個文字檔案,只允許寫資料
「at」
追加開啟乙個文字檔案,並在檔案末尾寫資料
「rb」
唯讀開啟乙個二進位制檔案,只允許讀資料
「wb」
只寫開啟或建立乙個二進位制檔案,只允許寫資料
「ab」
追加開啟乙個二進位制檔案,並在檔案末尾寫資料
「rt+」
讀寫開啟乙個文字檔案,允許讀和寫
「wt+」
讀寫開啟或建立乙個文字檔案,允許讀寫
「at+」
讀寫開啟乙個文字檔案,允許讀,或在檔案末追加資料
「rb+」
讀寫開啟乙個二進位制檔案,允許讀和寫
「wb+」
讀寫開啟或建立乙個二進位制檔案,允許讀和寫
「ab+」
讀寫開啟乙個二進位制檔案,允許讀,或在檔案末追加資料
對於檔案使用方式有以下幾點說明:
1) 檔案使用方式由r,w,a,t,b,+六個字元拼成,各字元的含義是:
r(read): 讀
w(write): 寫
t(text): 文字檔案,可省略不寫
b(banary): 二進位制檔案
+: 讀和寫
2) 凡用「r」開啟乙個檔案時,該檔案必須已經存在,且只能從該檔案讀出。
3) 用「w」開啟的檔案只能向該檔案寫入。若開啟的檔案不存在,則以指定的檔名建立該檔案,若開啟的檔案已經存在,則將該檔案刪去,重建乙個新檔案。
4) 若要向乙個已存在的檔案追加新的資訊,只能用「a」方式開啟檔案。但此時該檔案必須是存在的,否則將會出錯。
5) 在開啟乙個檔案時,如果出錯,fopen將返回乙個空指標值null。在程式中可以用這一資訊來判別是否完成開啟檔案的工作,並作相應的處理。因此常用以下程式段開啟檔案:
6) if((fp=fopen("c://hzk16","rb")==null)
這段程式的意義是,如果返回的指標為空,表示不能開啟c盤根目錄下的hzk16檔案,則給出提示資訊「error on open c:/ hzk16 file!」,下一行getch()的功能是從鍵盤輸入乙個字元,但不在螢幕上顯示。在這裡,該行的作用是等待,只有當使用者從鍵盤敲任一鍵時,程式才繼續執行,因此使用者可利用這個等待時間閱讀出錯提示。敲鍵後執行exit(1)退出程式。
7) 把乙個文字檔案讀入記憶體時,要將ascii碼轉換成二進位製碼,而把檔案以文字方式寫入磁碟時,也要把二進位製碼轉換成ascii碼,因此文字檔案的讀寫要花費較多的轉換時間。對二進位制檔案的讀寫不存在這種轉換。
8) 標準輸入檔案(鍵盤),標準輸出檔案(顯示器),標準出錯輸出(出錯資訊)是由系統開啟的,可直接使用。
檔案操作之開啟檔案 fopen函式用法
1.格式 file fp fp fopen filename.txt r 2.說明 第一行定義乙個檔案指標型別的變數fp。第二行開啟乙個檔案,返回乙個檔案指標賦值給fp 若開啟檔案失敗,返回空指標 fopen函式的第乙個引數 filename.txt 是要開啟的檔案的檔名,第二個引數表示檔案開啟模式...
檔案的開啟和關閉函式 fopen和fclose
一 fopen 1.基本格式 fopen 檔名 檔案的使用方式 開啟檔案 eg file fp fp fopen bookinfo.txt r file fp fp fopen d testc input.dat rb 以唯讀方式開啟d盤testc目錄下的二進位制檔案input.datr 唯讀 向程...
使用C 語言fopen函式開啟檔案失敗
include int main void else return 0 這是一段關於fopen的使用 其中file fopen wxb.txt r 這段 fopen後面接的是 wxb.txt 檔名 r 開啟方式,這是文字方式 wxb跟fopen後面wxb.txt的檔名不一樣,你如果在源 中wxb後面...