c語言檔案讀寫(fread,fprintf)

2021-07-12 01:35:01 字數 1132 閱讀 7993

利用fread進行成塊的檔案讀寫

int fread(void *buf,int size,int count,file *stream)

int fwrite(void *buf,int size,int count,file *stream)

fread()函式從stream 指向的流檔案讀取count (字段數)個字段,每個欄位為size(字段長度)個字元長,並把它們放到bu f(緩衝區)指向的字元陣列中。

fread()函式返回實際已讀取的字段數。若函式呼叫時要求讀取的字段數超過檔案存放的字段數,則出錯或已到檔案尾,實際在操作時應注意檢測。

fwrite()函式從buf(緩衝區)指向的字元陣列中,把count(字段數)個字段寫到stream所指向的流中,每個欄位為size個字元長,函式操作成功時返回所寫字段數。

關於成塊的檔案讀寫,在建立檔案時只能以二進位制檔案格式建立。

這裡還用到fseek函式

int fseek( file *stream, long offset, int origin );

第乙個引數stream為檔案指標

第二個引數offset為偏移量,正數表示正向偏移,負數表示負向偏移

第三個引數origin設定從檔案的**開始偏移,可能取值為:seek_cur、 seek_end 或 seek_set

seek_set: 檔案開頭

seek_cur: 當前位置

seek_end: 檔案結尾

其中seek_set,seek_cur和seek_end依次為0,1和2.

簡言之:

fseek(fp,100l,0);把stream指標移動到離檔案開頭100位元組處;

fseek(fp,100l,1);把stream指標移動到離檔案當前位置100位元組處;

fseek(fp,-100l,2);把stream指標退回到離檔案結尾100位元組處。

#include 

#include

#include

int main(int argc, const

char * argv) else

fprintf(fw, "\n");}}

return

0;}

C語言檔案讀寫

include include define maxlen 1024 int main file outfile,infile outfile fopen 1.bmp wb infile fopen c 1.bmp rb unsigned char buf maxlen int rc while r...

C語言讀寫檔案

c語言庫函式包括檔案的開啟 關閉 讀 寫 定位等各種操作 要操作檔案,首先要宣告乙個檔案指標變數file fp 呼叫fopen開啟檔案 檔案指標名 fopen 檔名,使用檔案方式 ps 這裡檔案路徑必須是帶雙斜槓 其中,1.檔案使用方式 意 義 rt 唯讀開啟乙個文字檔案,只允許讀資料 wt 只寫開...

C語言檔案讀寫

讀取乙個完整的檔案 include include int main 如果檔案錯誤,退出1 獲得檔案大小 fseek pfile 0 seek end 指標移到檔案末位 lsize ftell pfile 獲得檔案長度 rewind pfile 函式rewind 把檔案指標移到由stream 流 指...