1樓:黑會峰
ab檔案使用方式
「rt」 只讀開啟一個文字檔案,只允許讀資料「wt」 只寫開啟或建立一個文字檔案,只允許寫資料「at」 追加開啟一個文字檔案,並在檔案末尾寫資料「rb」 只讀開啟一個二進位制檔案,只允許讀資料「wb」 只寫開啟或建立一個二進位制檔案,只允許寫資料「ab」 追加開啟一個二進位制檔案,並在檔案末尾寫資料「rt+」 讀寫開啟一個文字檔案,允許讀和寫「wt+」 讀寫開啟或建立一個文字檔案,允許讀寫「at+」 讀寫開啟一個文字檔案,允許讀,或在檔案末追加資料「rb+」 讀寫開啟一個二進位制檔案,允許讀和寫「wb+」 讀寫開啟或建立一個二進位制檔案,允許讀和寫「ab+」 讀寫開啟一個二進位制檔案,允許讀,或在檔案末追加資料
2樓:許詩文
c語言中對檔案進行操作必須開啟檔案,開啟檔案主要涉及到fopen函式。fopen函式的原型為
file* fopen(const char *path,const char *mode)
其中path為檔案路徑,mode為開啟方式
1)對於檔案路徑,只需注意若未明確給出絕對路徑,則預設該檔案在工程的目錄下。若需給出絕對路徑,則注意轉義字元'\',比如有檔案test.txt存放在c盤根目錄下,則檔案路徑引數值應為c:
\\test.txt。
2)對於mode,主要由r,w,a,+,b,t六個字元組合而成。
r:只讀方式,檔案必須存在
w:只寫方式,若檔案存在,則原有內容會被清除;若檔案不存在,則會建立檔案
a:追加方式開啟只寫檔案,只允許進行寫操作,若檔案存在,則新增的內容放在檔案末尾;若不存在,則建立檔案
+:可讀可寫
b:以二進位制方式開啟檔案
t:以文字方式開啟檔案(預設方式下以文字方式開啟檔案)
下面是常見的組合:
r: 以只讀的方式開啟檔案,只允許讀,此檔案必須存在,否則返回null,開啟成功後返回檔案指標,位置指標指向檔案頭部
r+: 以可讀可寫的方式開啟檔案,允許讀寫,此檔案必須存在,否則返回null,開啟成功後返回檔案指標,位置指標指向檔案頭部
rb+: 以可讀可寫、二進位制方式開啟檔案,允許讀寫,此檔案必須存在,否則返回null,開啟成功後返回檔案指標,位置指標指向檔案頭部
rt+: 以可讀可寫、文字方式開啟檔案,允許讀寫,此檔案必須存在,否則返回null,開啟成功後返回檔案指標,位置指標指向檔案頭部
w: 以只寫的方式開啟檔案,只允許寫,若檔案存在,檔案中原有內容會被清除;若檔案不存在,則建立檔案,開啟成功後返回檔案指標,位置指標指向檔案頭部
w+: 以讀寫的方式開啟檔案,允許讀寫,若檔案存在,檔案中原有內容會被清除;若檔案不存在,則建立檔案,開啟成功後返回檔案指標,位置指標指向檔案頭部
a: 以追加、只寫的方式開啟檔案,只允許寫。若檔案存在,則追加的內容新增在檔案末尾,若檔案不存在,則建立檔案。
開啟成功後返回檔案指標,位置指標指向檔案頭部(注意很多書上或資料上講述追加方式開啟成功後位置指標指向檔案末尾是錯誤的)
a+: 以追加、可讀寫的方式開啟檔案,允許讀寫。若進行讀操作,則從頭開始讀;若進行寫操作,則將內容新增在末尾。
若檔案不存在,則建立檔案。開啟成功後返回檔案指標,位置指標指向檔案頭部。
c語言檔案問題
後面的是亂碼嗎,還是位置不對,我記得fseek fp,i sizeof struct student type 0 使用這個訪問檔案的話,那個檔案最好是寫的時候就用二進位制寫。對於文字檔案,其實你也可以麻煩點的。每一條檔案中的一個屬性佔一行,比如一個學生的資料,名字佔一行,學號佔一行.總共佔了4行,...
關於c語言中如何開啟檔案,c語言如何開啟檔案
zifu.txt檔案只能由ascii字元組成,否則會出現亂碼 include int main else printf s n str fprintf p,s str fclose p return 0 null而不是 0 c語言如何開啟檔案 建議你加上硬碟驅動器符和檔案路徑。假如欲開啟的檔案在c ...
c語言讀取檔案的函式程式解釋,C語言讀取檔案的函式 程式解釋
原來是空連結串列,p1,p2原來是兩個空節點,迴圈裡面p1先申請一塊記憶體塊,得到一個結點,並且這個結點從檔案輸入了資料 然後p2 next p1 就是得到連結串列 head p2 p1 p2 p1,那麼連結串列就是 head 空節點 p2,下一次迴圈,p1又申請了一塊記憶體並得到一個節點,p2 n...