C語言檔案讀寫

2021-09-29 17:44:38 字數 3022 閱讀 9885

typedef

struct

file;

file *

fopen

(char

*filename,

char

*mode)

;

開啟檔案的方式字元含義r

開啟已經存在的檔案,並從中讀取資料,不可寫入

w建立新檔案,並寫入檔案,不可讀區;如果檔案存在,覆蓋其內容

a開啟已經存在的檔案,並在尾部追加資料;不可讀取檔案內容

r+開啟檔案,準備讀寫

w+建立新檔案,準備讀寫;檔案存在覆蓋內容

a+等價於a,但可以讀取

t開啟乙個文字檔案

b開啟乙個二進位制檔案

int

*fclose (file *filename)

;

#include

#include

intmain()

else

fclose

(fp)

;return0;

}

int

feof

(file *filename)

;

字元讀寫:fgetc 和 fputc

int

fgetc

(file *filename)

;// 讀取乙個字元,並將filename指標後移1位

// 去讀成功返回讀到的字元值;否則返回eof

intfputc

(int c, file *filename)

;// 將c所表示的ascii字元存到filename中;並將檔案指標後移1位

// 如果存入成功,則返回字元c;否則返回eof

字串讀寫: fgets 和 gputs

char

*fgets

(char

*s,int n, file *filename)

;// 從file 中讀取 n-1個字元 到字串s中

// 如果讀取成功 返回字串的指標;否則返回null

char

*fputs

(char

*s, file* filename)

;// 從file中讀取一行字串到 s中

// 只讀取一行

資料塊讀寫: fread 和 fwrite

unsigned

fread

(void

*ptr,

unsigned size,

unsigned n, file *filename)

;// 從file中讀取n個資料項,每個資料項大小是size位元組,資料項存入到 ptr中,file往後移n個*size個位元組

// 如果成功讀取,則返回讀取的字元個數;否則返回0

unsigned

fwrite

(void

*ptr,

unsigned size,

unsigned n, file *filename)

;// 將ptr所指向的的記憶體資料塊(n*size)寫入到file中,同時file後移n*size個位元組

// 如果成功寫入則返回寫入的資料項個數;否則返回0

格式化讀寫: fscanf 和 fprintf

int

fscanf

(file *filename,

const

char

* formatm[

, address ,..

.]);

// fscanf(fp, "%d%d%d", &i, &j, &k);

// 從filename指向的檔案中讀取資料

// 如果操作成功,返回讀取的資料項個數;否則返回eof

intfprintf

(file *filename,

const

char

* formatm[

, address ,..

.]);

// fprintf(fp, "%d%d%d", i, j, k);

// 將表示式輸出到filename所指向的檔案中

// 如果操作成功,返回寫入的資料項個數;否則返回eof

例子

#include

#include

intmain()

else

*/char str[

101]

;while(!

feof

(fp))}

fclose

(fp)

;return0;

}

void

rewind

(file *filename)

;//將filename所指向的檔案的讀寫位置指標重新置回到檔案首部

intfseek

(file *filename,

long offset,

int whence)

;// 將filename所指向的檔案的讀寫位置指標移動到特定位置,特定位置由whence和offset決定

// 將位置指標移動到距離whence的offset位元組處;offset為正則在whence後面,為負則在whence前面

// 如果操作成功,返回0;否則返回非0

long

ftell

(file *filename)

;// 返回filename所指向的檔案的當前讀寫位置指標的值

// 操作成功返回指標值;否則返回-1l

whence的常量值

數值含義

seek__set

0檔案的開始處

seek_cur

1檔案位置指標的當前位置

seek_end

2檔案的末尾

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