文件操作(2)

二、文件的关闭(fclose函数)

■函数调用:

fclose (文件指针) ;

■ 函数功能:

使文件指针变量不指向该文件,也就是文件指针变量与文件“脱钩”,此后不能再通过该指针对原来与其相联系的文件进行读写操作。

返回值:

■关闭成功返回值为O ;否则返回EOF(-1)

文件的读写

对文件的读和写是最常用的文件操作。在C语言中提供了多种文件读写的函数:

字符读写函数fgetc 和fputc■字符串读写函数: fgets和fputs■数据块读写函数 : freed 和fwrite格式化读写函数: fscanf和fprinf

下面分别予以介绍。使用以上函数都要求包含头文件stdio.h。

字符读写函数: fgetc和fputc

■一、字符输入输出函数(fputc()和fgetc()

■ fputc(函数 调用:0fputc(ch,fp);

.■函数功能:

将字符(ch的值)输出到fp所指向的文件中去。

对于fputc函数的使用要说明几点

■用写或读写方式打开一个已存在的文件时将清除原有的文件内容,写入字符从文件首开始。如需保留原有文件内容,希望写入的字符以文件末开始存放,必须以追加方式打开文件。被写入的文件若不存在,则创建该文件。

.每写入一个字符,文件内部位置指针向后移动一个字节。

fputc函数有一个返回值, 如写入成功则返回写入的字符,否则返回一个EOF。o用此来判断写入是否成功。

■应注意文件指针和文件内部的位置指针不是一回事。

文件指针是指向整个文件的,项在程序中定义说明,只要不重新赋值,文件指针的值是不变的。

文件内部的位置指针用以指示文件内部的当前读写位置,每读写一次,该指针均向后移动,它不需在程序中定义说明,而是由系统自动设置的。

补充一下

●1从一个文本文件顺序读入字符并在屏幕上显示出来:

ch=fgetc(fp);
{
while( ch!= EOF )

putchar (ch) ;ch = fgetc( fp) ;
}

■注意: EOF不是可输出字符,因此不能在屏幕上显示。由于字符的ASCII码木可能出现一| ,因此EOF定义为一|是合适的。当读入的字符值等于一I

时,表示读入的已不是正常的字符而是文件结束符。

■从一个二进制文件顺序读入字符:while( ! feof ( fp) )

{

ch = E在变中(2kB/) ;
}

注意: ANSI C提供一个feof ( )函数来判断文件是否真的结束。如果是文件结束,函数feof(fp)的值为|(真);否则为0(假)。以上也适用于文本文件的读取。

猜你喜欢

转载自blog.csdn.net/yooppa/article/details/113059236