C語言第13課 檔案讀寫

2021-09-01 22:54:34 字數 2547 閱讀 5063

乙個檔案,無論它是文字檔案還是二進位制檔案,都是代表了一系列的位元組。

c 語言不僅提供了訪問頂層的函式,也提供了底層(os)呼叫來處理儲存裝置上的檔案。

使用fopen( )函式來建立乙個新的檔案或者開啟乙個已有的檔案,這個呼叫會初始化型別file的乙個物件,型別file包含了所有用來控制流的必要的資訊。

file *fopen( const char * filename, const char * mode );
filename是字串,用來命名檔案,訪問模式mode的值可以是下列值中的乙個:

模式描述

r開啟乙個已有的文字檔案,允許讀取檔案。

w開啟乙個文字檔案,允許寫入檔案。如果檔案不存在,則會建立乙個新檔案。在這裡,您的程式會從檔案的開頭寫入內容。如果檔案存在,則該會被截斷為零長度,重新寫入。

a開啟乙個文字檔案,以追加模式寫入檔案。如果檔案不存在,則會建立乙個新檔案。在這裡,您的程式會在已有的檔案內容中追加內容。

r+開啟乙個文字檔案,允許讀寫檔案。

w+開啟乙個文字檔案,允許讀寫檔案。如果檔案已存在,則檔案會被截斷為零長度,如果檔案不存在,則會建立乙個新檔案。

a+開啟乙個文字檔案,允許讀寫檔案。如果檔案不存在,則會建立乙個新檔案。讀取會從檔案的開頭開始,寫入則只能是追加模式。

如果處理的是二進位制檔案,則需使用下面的訪問模式來取代上面的訪問模式:

"rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"
例項

file *fp=null;

fp=fopen("c:\\users\\administrator\\desktop\\demo.txt", "r");

為了關閉檔案,請使用 fclose( ) 函式。

int fclose( file *fp );
如果成功關閉檔案,fclose( )函式返回零,如果關閉檔案時發生錯誤,函式返回eof。這個函式實際上,會清空緩衝區中的資料,關閉檔案,並釋放用於該檔案的所有記憶體。eof 是乙個定義在標頭檔案stdio.h中的常量。

int fc = fclose(fp);
把字元寫入到流中的最簡單的函式:

int fputc( int c, file *fp );
函式fputc()把引數 c 的字元值寫入到 fp 所指向的輸出流中。如果寫入成功,它會返回寫入的字元,如果發生錯誤,則會返回eof

int fputs( const char *s, file *fp );
函式fputs()把字串s寫入到 fp 所指向的輸出流中。如果寫入成功,它會返回乙個非負值,如果發生錯誤,則會返回eof

也可以使用int fprintf(file *fp,const char *format, ...)函式來寫把乙個字串寫入到檔案中。

int fwc = fputc('1',fp);

int fws = fputs("hello", fp);

int fws2 = fprintf(fp, " world");

fclose(fp);

1hello world
int fgetc( file * fp );
fgetc()函式從 fp 所指向的輸入檔案中讀取乙個字元。返回值是讀取的字元,如果發生錯誤則返回eof

char *fgets( char *buf, int n, file *fp );
函式fgets()從 fp 所指向的輸入流中讀取 n - 1 個字元。它會把讀取的字串複製到緩衝區buf,並在最後追加乙個null字元來終止字串。

如果這個函式在讀取最後乙個字元之前就遇到乙個換行符 '\n' 或檔案的末尾 eof,則只會返回讀取到的字元,包括換行符。

也可以使用int fscanf(file *fp, const char *format, ...)函式來從檔案中讀取字串,但是在遇到第乙個空格字元時,它會停止讀取。

#include #include int main()

你  好 你  好

《實用C 》第44課 檔案IO操作之讀寫

1 簡介 上節課給大家介紹了各種型別的檔案流物件,對檔案進行了開啟與關閉的操作。那麼開啟與關閉不是目的,開啟檔案之後重要的是為了要進行檔案的讀寫操作,不然開啟 關閉檔案幹嘛?對不對?在c 檔案流操作中,可以使用多種方法對檔案進行讀寫操作,例如 put get getline read write 都...

Linux基礎第002課 檔案系統

unix linux路徑由到達定位檔案的目錄組成。在unix linux系統中組成路徑的目錄分割符為斜槓 而dos則用反斜槓 來分割各個目錄。路徑分為絕對路徑和相對路徑 在 windows 平台下,開啟 計算機 我們看到的是乙個個的驅動器碟符 每個驅動器都有自己的根目錄結構,這樣形成了多個樹並列的情...

C語言第九課 檔案的操作

檔案的開啟 fopen函式 file fp fp fopen 檔名 使用檔案的方式 r 以唯讀的方式開啟檔案,只允許讀,此檔案必須存在,否則返回null,開啟成功後返回檔案指標,位置指標指向檔案頭部 r 以可讀可寫的方式開啟檔案,允許讀寫,此檔案必須存在,否則返回null,開啟成功後返回檔案指標,位...