檔案輸入輸出(二) 檔案的操作

2022-08-03 06:00:19 字數 1602 閱讀 5693

file *fopen(char * filename,char * mode)

filename對應的實參是乙個字串,表示需要開啟的檔案的檔名(可以包括檔案的路徑),該實參可以是乙個字串常量,也可以是乙個字元指標;

mode對應的實參也是乙個字串,對應了檔案的操作模式:

「r」:以唯讀方式開啟乙個文字檔案,如果檔案不存在則開啟失敗。開啟後,從頭開始讀。

「w」:以只寫方式開啟或建立乙個文字檔案,如果檔案存在則丟棄所有內容。

「a」:以新增方式開啟乙個文字檔案,在尾部接著寫入資料,若檔案不存在則穿件新檔案。

「rb」:開啟乙個唯讀的二進位制檔案,如果檔案不存在 則開啟失敗。

「wb」:開啟或建立乙個只寫的二進位制檔案,如果檔案存在則丟棄所有內容。

「ab」:以新增方式開啟乙個二進位制檔案。

「r+」:開啟乙個可讀/可寫的文字檔案,可以對檔案讀或寫,檔案不存在則操作失敗。

「rb+」:開啟乙個可讀/寫的二進位制檔案。

"wb+":建立乙個新的可讀/寫的二進位制檔案。

"ab+":開啟乙個可讀/寫的二進位制檔案。

開啟檔案:file *fp;

if(fp=fopen("c:\\tc\\test.txt","r")==null)

printf("cannot open this file\n");

exit(0);

關閉檔案:int fclose(file *stream)

檔案的結束:int feof(file* stream)

file *fp;

while(!feof(fp))

操作檔案;

字元輸入輸出函式:int fputc(int ch,file *stream):返回 乙個向檔案所寫字元的值,此時寫操作成功,否則返回eof(檔案結束符,值為-1,在stdio.h中定義)表示寫操作錯誤。

int fgetc(file * stream):返回檔案當前位置的乙個字元的ascii值,在讀操作遇到檔案結束時,函式返回乙個檔案結束標誌。

行輸入輸出函式:char fgets(char *string,int n,file *stream):string的實參是指向乙個字元陣列的指標,fgets函式從檔案中讀取至多n-1個字元(n用來指定需要讀出的字元數),stream為指向某個檔案的檔案指標。當讀入遇到換行符,將包括換行符在內的字串放入指定的字元陣列中;當讀入n-1個字元後沒有遇到換行符,則將這些字元放入字元陣列中。無論操作如何完成,函式都在陣列中存放的字元後加乙個空字元『\0』,表示乙個字串結束。正常讀入成功時,函式返回string指標,遇到檔案結束或操作出錯時返回乙個空指標。

int fputs(char *string,file *stream):將string所指向的字串寫入到檔案指標stream所指向的檔案中。當string指標所指的字串成功寫入時,函式返回非0值;寫操作失敗時,函式返回eof。

格式化輸入輸出函式:int fprintf(file *stream,char *format,):返回值為實際寫入檔案的中的字元個數(位元組數)。如果寫錯誤則返回乙個負數。格式化的規定與printf話術相同。

int fscanf(file *stream,char *format,):讀取錯誤返回eof,否則成功。

摘自:王芳《c語言程式設計》

c (十) 檔案件輸入輸出流(二)

一 格式化輸出與i o流函式 1 格式化輸出 設定域寬控制符setw n 所謂域寬即資料所佔的總字元數 要包含標頭檔案,setw 的預設為setw 0 按實際輸出 如果輸出的數值占用的寬度超過setw int n 設定的寬度,則按實際寬度輸出 include include int main out...

python 16 檔案操作 輸入輸出

檔案操作分為三步 找到檔案 操作關閉按照編碼方式進行檔案的分類 使用方便 占用記憶體小 但是讀取速度慢 不允許跳躍讀取 二進位制檔案 把檔案儲存放在記憶體檔案中進行操作 分類 程式檔案 資料檔案 輸入檔案 輸出檔案文字檔案的操作 又叫ascci檔案 但是預設是編碼uncode編碼 開啟檔案 open...

2017 11 04 10檔案的輸入輸出,異常

檔案的輸入輸出,異常 1.檔案 2.異常 1.檔案的輸入輸出 1.開啟檔案open函式 open file option file是要開啟的檔案 option是可選擇的引數,常見有 mode等 2.檔案的開啟模式 r 制度模式,檔案不存在時會報錯 w 寫入模式,檔案存在會清空之前的內容,檔案不存在則...