利用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 流 指...