c 讀寫二進位制檔案

2021-05-27 12:37:47 字數 978 閱讀 2511

最近需要用到二進位制檔案讀寫的相關操作,這邊稍微總結下,首先二進位制檔案的讀寫可以使用fread和fwrite來處理。

fread函式原型:size_t _cdecl fread(void*, size_t,size_t,file*);

第乙個引數表示的是快取,第二個引數表示的是基本單元的大小,第三引數表示的是基本單元的個數,第四個引數表示的是原檔案

例如:int size=1024;

unsigned char buf[1024];

file* infile=fopen("lena.bmp","rb");

int rc=fread(buf,sizeof(unsigned char),size,infile);

需要注意的地方:

返回值rc表示當前這次讀檔案操作讀出來資料的數量,如果當前檔案只剩下2個unsigned char了,則返回值rc為2,同時當前檔案指標前移2個位置。如果當前檔案還有1024個unsigned char,則rc為1024,同時檔案指標前移1024個。

fwrite函式原型: size_t  _cdecl fwrite(const void*, size_t,size_t,file*);

第乙個引數表示需要寫入的資料目前所在的快取,第二個引數寫的是寫入資料的基本單元的大小,第三個引數表示的寫入資料的基本單元的個數,第四個引數表示的是輸出檔案

例如:file* outfile=fopen("newlena.bmp","wb");

fwrite(buf,sizeof(unsigned char),size,outfile);

除此以外,檔案讀寫中用的還比較多的函式有fseek函式.

fseek函式原型: int _cdecl fseek(file*, long, int);

函式作用:定位檔案的讀寫指標的位置

例如: fseek(infile,-2,seek_end);//把當前檔案的指標定位到檔案倒數第二個字元,seek_end表示檔案末尾位置,-2表示負向偏移兩個位元組.

C 讀寫二進位制檔案

摘要 使用c 讀寫二進位制檔案,在開發中操作的比較頻繁,今天有幸找到一篇文章,遂進行了一些試驗,並進行了部分的總結。使用c 操作檔案,是研發過程中比較頻繁的,因此進行必要的總結和封裝還是十分有用的。今天在網上找到一篇,遂進行了部分的試驗,以記之,備後用。include 寫二進位制檔案 寫二進位制檔案...

C 二進位制檔案讀寫

今天終於弄明白怎樣使用c 讀寫二進位制檔案了。要讀取檔案必須包含標頭檔案,這裡包含了c 讀寫檔案的方法。可以使用fstream類,這個類可以對檔案進行讀寫操作。1 開啟檔案。可以寫檔案了,讀檔案就好辦多了。讀檔案需要用到read函式。其引數和write大致相同,read const char ch,...

C 讀寫二進位制檔案

本文要介紹的c 本地讀寫二進位制檔案,二進位制檔案指儲存在物理磁碟的乙個檔案。第一步 讀寫檔案轉成流物件。其實就是讀寫檔案流 filestream物件,在system.io命名空間中 file fileinfo filestream這三個類可以將開啟檔案,並變成檔案 流。下面是引用微軟對file f...