1. 程式人生 > >庫函式方式檔案程式設計

庫函式方式檔案程式設計

1.核心理論

庫函式:基於c函式庫的檔案程式設計是獨立於具體的作業系統平臺的,不管是在windows下還是linux下,都是使用這些函式,使用庫函式進行程式設計可提高程式的可移植性。

:對於標準的c函式庫,它們的操作都是圍繞流來進行的。流是一個抽象的概念,當程式需要讀取資料的時候,就會開啟一個通向資料來源的流,這個資料來源可以是檔案,記憶體或者網路連線。類似的,當程式需要寫入資料的時候,就會開啟一個通向目的的流,這時候你就可以想象資料好像在其中“流”動一樣。

檔案指標:在系統呼叫方式實現檔案訪問中,使用檔案描述符來指向一個檔案。在庫函式方式的檔案訪問中,使用FILE型別來表示一個開啟的檔案,這個型別中包含了管理檔案流的資訊。而指向該型別的指標FILE*則被稱之為檔案指標。

2.函式學習

開啟檔案

函式名:fopen

函式原型:FILE *fopen(const char *path, const char *mode);

函式功能:開啟檔案

標頭檔案:<stdio.h>

返回值:成功:檔案指標,  失敗:NULL

引數說明:path:含路徑的檔名    mode:檔案開啟模式

 

關閉檔案

函式名:fclose

函式原型:int fclose(FILE *fp);

函式功能:關閉檔案

標頭檔案: <stdio.h>

返回值:成功:0   失敗:EOF

引數說明:fp:檔案指標

 

讀檔案

函式名:fread

函式原型:size_t fread(void *ptr, size_t size, size_t nmemb, FILE *steam);

函式功能:從檔案中讀取資料

標頭檔案: <stdio.h>

返回值:成功:讀取到的資料量   失敗:0

引數說明:stream:指向要讀取的檔案  ptr:指向要儲存的位置    memb:讀取的資料塊數   size:每塊資料的大小

 

寫檔案

函式名:fwrite

函式原型:size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);

函式功能:向檔案中寫入資料

標頭檔案:<stdio.h>

返回值:成功:返回成功寫入資料量    失敗:0

引數說明:stream:要寫入資料的檔案指標   ptr:存放要寫入檔案的資料    nmemb:要寫入的資料塊數    size:每塊資料的大小   

 

檔案分定位

函式名:fseek

函式原型:int fseek(FILE *stream, long offset, int whence);

函式功能:重新定位檔案

標頭檔案: <stdio.h>

返回值:成功:0  失敗:-1

引數說明:stream:檔案指標  offset:檔案偏移  whence:從哪個地方開始偏移