C語(yǔ)言中的文件處理用于打開(kāi),讀取,寫入,搜索或關(guān)閉文件。它用于永久存儲(chǔ)數(shù)據(jù)。
文件的優(yōu)點(diǎn)
即使在程序退出后也會(huì)包含數(shù)據(jù)。通常我們使用變量或數(shù)組來(lái)存儲(chǔ)數(shù)據(jù),但在程序退出后數(shù)據(jù)丟失。變量和數(shù)組是非永久性存儲(chǔ)介質(zhì),而文件是永久存儲(chǔ)介質(zhì)。
C語(yǔ)言庫(kù)中有定義和實(shí)現(xiàn)了很多可以打開(kāi),讀取,寫入,搜索和關(guān)閉文件的函數(shù)。文件函數(shù)列表如下:
編號(hào) | 函數(shù)名稱 | 功能描述 |
---|---|---|
1 | fopen() | 打開(kāi)新的或現(xiàn)有的文件 |
2 | fprintf() | 將數(shù)據(jù)寫入文件 |
3 | fscanf() | 從文件讀取數(shù)據(jù) |
4 | fputc() | 將一個(gè)字符寫入文件 |
5 | fgetc() | 從文件讀取一個(gè)字符 |
6 | fclose() | 關(guān)閉文件 |
7 | fseek() | 將文件指針設(shè)置為給定位置 |
8 | fputw() | 將一個(gè)整數(shù)寫入到文件 |
9 | fgetw() | 從文件讀取一個(gè)整數(shù) |
10 | ftell() | 返回當(dāng)前文件指針的位置 |
11 | rewind() | 將文件指針設(shè)置為文件的開(kāi)頭 |
打開(kāi)文件:fopen()函數(shù)
fopen()
函數(shù)用于打開(kāi)文件,fopen()
函數(shù)的語(yǔ)法如下:
FILE *fopen( const char * filename, const char * mode );
您可以在fopen()
函數(shù)中使用以下模式之一。
模式 | 說(shuō)明 |
---|---|
r | 以讀取模式打開(kāi)文本文件 |
w | 以寫入模式打開(kāi)文本文件 |
a | 以附加模式打開(kāi)文本文件 |
r+ | 以讀寫模式打開(kāi)文本文件 |
w+ | 以讀寫模式打開(kāi)文本文件 |
a+ | 以讀寫模式打開(kāi)文本文件 |
rb | 以讀取模式打開(kāi)二進(jìn)制文件 |
wb | 在寫入模式下打開(kāi)二進(jìn)制文件 |
ab | 以附加模式打開(kāi)二進(jìn)制文件 |
rb+ | 以讀寫模式打開(kāi)二進(jìn)制文件 |
wb+ | 以讀寫模式打開(kāi)二進(jìn)制文件 |
ab+ | 以讀寫模式打開(kāi)二進(jìn)制文件 |
關(guān)閉文件:fclose()
fclose()
函數(shù)用于關(guān)閉文件。fclose()
函數(shù)的語(yǔ)法如下:
int fclose( FILE *fp );
fprintf()和fscanf()函數(shù)
fputc()和fgetc()函數(shù)
fputs()和fgets()
fseek()函數(shù)