C語言中的檔案操作

2021-07-02 17:50:40 字數 2296 閱讀 2161

#include 

file *fopen(const

char *path, const

char *mode); //path表示檔案路徑,mode表示檔案使用方式

int fclose( file* pf ); //成功關閉返回0,否則返回eof,並且將錯誤記錄在系統全域性變數errno中

//從stream當前位置讀取乙個字元

int getc(file *stream);

//將c寫入stream當前位置,成功返回0,否則返回eof

int fputc(int c, file *stream);

//從stream當前位置讀取長度為size-1的字串並儲存於s中。成功返回s,否則返回null

char *fgets(char *s, int size, file *stream);

//將字串寫入stream

intfputs(const

char *s, file *stream);

//讀取nmemb份資料,每份大小為size,並將它們儲存在ptr指向的空間。返回讀取的資料大小

size_t fread(void *ptr, size_t size, size_t nmemb, file *stream);

//從ptr指向的空間提取資料向stream寫入nmemb份資料,每份大小為size,返回寫入的資料大小

size_t fwrite(const

void *ptr, size_t size, size_t nmemb,

file *stream);

//格式讀寫,與標準輸入輸出的printf和scanf一樣,只是在前面多了乙個檔案指標

intfprintf(file *stream, const

char *format, ...);

intfscanf(file *stream, const

char *format, ...);

有關檔案的使用方式有以下幾點說明:

1. 檔案使用方式由r,w,a,t,b,+六個字元拼成,各字元的含義是:

r(read): 讀

w(write): 寫

t(text): 文字檔案,可省略不寫

b(banary): 二進位制檔案

+: 讀和寫

2. 凡用「r」開啟乙個檔案時,該檔案必須已經存在, 且只能從該檔案讀出。

3. 用「w」開啟的檔案只能向該檔案寫入。 若開啟的檔案不存在,則以指定的檔名建立該檔案,若開啟的檔案已經存在,則將該檔案刪去,重建乙個新檔案。

4. 若要向乙個已存在的檔案追加新的資訊,只能用「a 」方式開啟檔案。但此時該檔案必須是存在的,否則將會出錯。

5. 在開啟乙個檔案時,如果出錯,fopen將返回乙個空指標值null。在程式中可以用這一資訊來判別是否完成開啟檔案的工作,並作相應的處理。

6. 把乙個文字檔案讀入記憶體時,要將ascii碼轉換成二進位製碼, 而把檔案以文字方式寫入磁碟時,也要把二進位製碼轉換成ascii碼,因此文字檔案的讀寫要花費較多的轉換時間。對二進位制檔案的讀寫不存在這種轉換。

7. 標準輸入檔案(鍵盤),標準輸出檔案(顯示器 ),標準出錯輸出(出錯資訊)是由系統開啟的,可直接使用。檔案關閉函式fclose()檔案一旦使用完畢,應用關閉檔案函式把檔案關閉, 以避免檔案的資料丟失等錯誤。

有關檔案讀寫的一些說明:

1. 進行讀取操作時,檔案必須是以讀或讀寫方式開啟的,進行寫操作時,必須是以寫或追加方式開啟的

2. 檔案內部有乙個位置指標,用來指向檔案當前的讀寫位置,在檔案開啟時,該指標總是指向檔案的第乙個字元位置。

3. 對於fgets,如果在未讀完size-1個字元前就遇到了eof或換行符,則讀出結束

4. fread和fwrite可以用來從檔案讀取結構、寫入結構

//將檔案的位置指標指向由whence加上偏移offset的位置,whence可以是seek_set(檔案起始位置)、seek_cur(當前位置)、seek_end(終止位置)

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

//返回檔案當前位置

long ftell(file *stream);

//將位置指標指向檔案頭,相當於fseek(stream, 0l, seek_set)

void rewind(file *stream);

//獲取或設定檔案位置指標

int fgetpos(file *stream, fpos_t *pos);

int fsetpos(file *stream, fpos_t *pos);

C語言中的檔案操作

本次詳細介紹c下檔案的各種api.1 開啟檔案 file fopen const char filename,const char mode 返回檔案控制代碼,非null為正確開啟。2 關閉檔案 int fclose file stream 例子 file psrc fopen data5610.t...

C語言中的檔案操作

一 檔案 檔案 file 一般指儲存在外部介質上資料的集合,從不同的角度可對檔案作不同的分類。根據儲存規則可以將其分為 mp4 txt bmp jpg exe rmvb等檔案。從使用者的角度看,檔案可分為普通檔案和裝置檔案兩種 普通檔案是指駐留在磁碟或其它外部介質上的乙個有序資料集 裝置檔案是指與主...

C語言中的檔案操作

c語言中的檔案操作函式,將資料寫入檔案。具體如下 一 開啟檔案。使用fopen函式。格式為 file fopen const char name,const char mode 其中name為要寫入的檔名,mode為格式字元。要寫入檔案,mode可以是 1 w 只寫方式,文字形式輸入 2 wb 只寫...