c實現功能(11)對二進位制檔案的讀寫
阿新 • • 發佈:2018-12-13
#include <stdio.h> #include <string.h> int main(){ //實現對二進位制檔案的讀取 //開啟檔案 FILE *p = fopen("D:\\test\\a.wmv", "rb"); FILE *p1 = fopen("D:\\test\\b.wmv", "wb"); //設定字元緩衝區的大小,設定為4K有利於記憶體的讀寫 int buf[1024 * 4] = {0}; //讀取檔案內容 while(!feof(p)){ memset(buf, 0, sizeof (buf)); //因為需要保證讀取的位元組數和寫入的位元組數相同,所以使用fread讀取位元組數的返回值 size_t res = fread(buf, sizeof (char), sizeof (buf), p); //寫入檔案內容 fwrite(buf, sizeof (char), res, p1); } fclose(p); fclose(p1); return 0; }