對于文件使用方式有以下幾點說明:
1. 文件使用方式由r,w,a,t,b,+六個字符拼成,各字符的含義是:
r(read): 讀
w(write): 寫
a(append): 追加
t(text): 文本文件,可省略不寫
b(banary): 二進制文件
+: 讀和寫
2. 凡用“r”打開一個文件時,該文件必須已經(jīng)存在, 且只能從該文件讀出。
3. 用“w”打開的文件只能向該文件寫入。 若打開的文件不存在,則以指定的文件名建立該文件,若打開的文件已經(jīng)存在,則將該文件刪去,重建一個新文件。
4. 若要向一個已存在的文件追加新的信息,只能用“a ”方式打開文件。但此時該文件必須是存在的,否則將會出錯。
if((fp=fopen("C:\\hzk16","rb")==NULL)
{
printf("\nerror on open C:\\hzk16 file!");
getCh();
exit(1);
}
6. 把一個文本文件讀入內(nèi)存時,要將ASCII碼轉(zhuǎn)換成二進制碼, 而把文件以文本方式寫入磁盤時,也要把二進制碼轉(zhuǎn)換成ASCII碼,因此文本文件的讀寫要花費較多的轉(zhuǎn)換時間。對二進制文件的讀寫不存在這種轉(zhuǎn)換。
7. 標(biāo)準(zhǔn)
fClose函數(shù)
調(diào)用的一般形式是: fClose(文件指針); 例如:
fClose(fp); 正常完成關(guān)閉文件操作時,fClose函數(shù)返回值為0。如返回非零值則表示有錯誤發(fā)生。文件的讀寫對文件的讀和寫是最常用的文件操作。
在C語言中提供了多種文件讀寫的函數(shù):
·字符讀寫函數(shù) :fgetC和fputC
·字符串讀寫函數(shù):fgets和fputs
·格式化讀寫函數(shù):fsCanf和fprinf
一、讀字符函數(shù)fgetC
fgetC函數(shù)的功能是從指定的文件中讀一個字符,函數(shù)調(diào)用的形式為: 字符變量=fgetC(文件指針); 例如:Ch=fgetC(fp);其意義是從打開的文件fp中讀取一個字符并送入Ch中。
對于fgetC函數(shù)的使用有以下幾點說明:
1. 在fgetC函數(shù)調(diào)用中,讀取的文件必須是以讀或讀寫方式打開的。
2. 讀取字符的結(jié)果也可以不向字符變量賦值,例如:fgetC(fp);但是讀出的字符不能保存。
[例10.1]讀入文件e10-1.C,在屏幕上輸出。
#inClude<stdio.h>
main()
{
FILE *fp;
Char Ch;
if((fp=fopen("e10_1.C","rt"))==NULL)
{
printf("Cannot open file strike any key exit!");
getCh();
exit(1);
}
Ch=fgetC(fp);
while (Ch!=EOF)
{
putChar(Ch);
Ch=fgetC(fp);
}
fClose(fp);
}
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |