c語言中對檔案的操作,是很重要的,今天我首先對對檔案進行操作的函式進行整理學習
1. fread:
原型:size_t fread(void * buffer,size_t size,size_t count,file *stream)
size:要讀取的每個資料項的位元組數
count:要讀取的資料項的個數
stream:輸入流
返回值:真實寫入的項數,若大於count的數值則產生錯誤則返回0.
功能:從乙個檔案流中讀取資料,以塊的形式讀取大量資料,可讀取count個資料項,每個項有size個位元組,呼叫成功返回count的數值,不成功或者讀到檔案末尾返回0。
標頭檔案:stdio.h
示例:fread(buf,1,strlen(address),stream);
2. fwrite:
原型:size_t fwrite(const void* buffer, size_t size, size_t count, file* stream);
size:要寫入內容的單位元組數
count:要寫入的資料項的個數
stream:目標檔案指標
返回值:實際寫入的資料項個數count
功能:向所指向的檔案寫乙個資料塊
標頭檔案:stdio.h
2)如果檔案開啟模式是w+,是從檔案指標指向的位址開始寫,替換掉之後的內容,檔案的長度可以不變,stream的位置移動count個數
3)如果檔案開啟模式是a+,則從檔案的末尾開始新增,檔案長度加大
4) 該函式是寫到了使用者空間緩衝區,並未同步到檔案中,所以修改後要將記憶體與檔案同步可以用fflush(file *fp)函式同步。
示例:fwrite(buf,sizeof(address)1,fp);
3. fgetc:
原型:char *fgets(char *buf, int bufsize, file *stream);
bufsize:整型資料,指明儲存資料的大小
stream:檔案結構體指標,將要讀取的檔案流
返回值:成功則返回buf,失敗或讀到檔案結尾返回null
功能:從檔案中讀取字串,
讀取一行資料,讀取的資料儲存在buf指向的字元陣列,最多一次讀取bufsize個字元(第bufsize個字元』\0』)。
標頭檔案:stdio.h
注意點:
1) 不能直接通過fgets的返回值來判斷函式是否是出錯而終止的,應該借助feof()或者ferror()來判斷。
2) 讀取指定大小的資料,可以避免gets()從stdin接收字串而不檢查它所複製的快取的容積導致的快取溢位問題
示例: fgets(buf,strlen(string),fp);
4. fputs:
原型:int fputs(const char * s,file * stream)
引數:str: 字元型指標,可以是字串常量,或者存放字串的陣列首地
fp:檔案指標
返回值:若成功則返回寫出的字元個數,返回eof則表示有錯誤發生
功能:向指定檔案的檔案寫入乙個字串
標頭檔案:stdio.h
示例:fputs(str,fp);
5. fgetc:
原型:int fgetc(file *stream)
引數:stream:檔案指標
返回值:成功則返回讀取到的字元,到達檔案尾或者錯誤則返回eof,上述的兩種情況需要通過ferror()或feof()來區分
功能:從檔案中讀取乙個字元
標頭檔案:stdio.h
示例:fgetc(fp);
6. fputc:
原型:int fputc (char c, file *fp)
引數:c:字元
fp:檔案指標,
返回值:在正常呼叫情況下,函式返回寫入檔案的字元的ascii碼值,出錯時,返回eof(-1)
功能:將字元ch寫到檔案指標fp所指向的檔案的當前寫指標的位置
標頭檔案:stdio.h
示例:fputc(s[i],f);
C語言檔案操作相關
在程式設計師和磁碟之間有乙個檔案作業系統 適配層 在作業系統下只有兩種檔案 文字檔案 ascll檔案 二進位制檔案 記憶體儲存 檔案的三板斧 開啟 讀和寫 關閉。開啟函式fopen fopen 函式開啟由fname 檔名 指定的檔案,並返回乙個關聯該檔案的流.如果發生錯誤,fopen 返回null....
C語言相關檔案操作
1.對已知檔案進行分割。1 include 2 include 3 include 4 file in,out 5 char filename 256 ch,cfilename 256 6 void depart 7 15 unsigned long int n 1,k,byte 0 16 unsi...
C語言之檔案相關操作
fopen 作用 以指定方式開啟檔案 file fopen const char path 待開啟的檔案路徑 const char mode 開啟方式,有如下 r 以唯讀方式開啟 w 只寫檔案,若檔案存在則將內容清零重新寫入 若檔案不存在則建立該檔案 w 可讀寫檔案,規則同上 a 以附加的方式開啟只...