首页 百科知识 打开的文件只能显示在工具栏

打开的文件只能显示在工具栏

时间:2024-10-17 百科知识 版权反馈
【摘要】:虽然文件可以按名识别,但若要访问一个文件,则必须用fopen()函数预先打开。fopen()的第一个参数filename表示要打开的文件名,第二个参数mode用以确定使用该文件的模式。用“r”选择项打开的文件不能写。如:如果要打开的文件不存在,fopen()函数返回NULL指针,也就是0,屏上显示出提示信息。为了避免文件打开失败时对文件产生破坏,通常在打开文件时,有必要增加这种检测语句,即当fp等于NULL时,打开文件失败,终止程序。

9.3.1 打开文件函数——fopen

虽然文件可以按名识别,但若要访问一个文件,则必须用fopen()函数预先打开。要打开一个文件,需要告诉编译程序三件事:(1)打算访问的文件名;(2)怎样使用那个文件;(3)在什么地方去找该文件有关的信息。打开文件的工作可用下面语句完成:

  FILE,*fp;

  fp= fopen(filename,mode);

其中,fp定义为指向FILE类型的指针。fopen()的第一个参数filename表示要打开的文件名,第二个参数mode用以确定使用该文件的模式。允许使用的模式有读(“r”)、写(“w”)和添加(“a”)等。

如果fopen()打开成功,fopen()函数将返回一个指向FILE结构类型的文件指针。这个指针赋予fp后,fp指向打开的文件。从概念上讲,fp将作为已打开文件的特殊标识符,即在程序中对文件的所有访问都将通过fp实现,实际上fp告诉系统对文件的每个I/O操作应该到什么地方去完成。

如果要从已存在的文件中读取信息,在打开文件时使用“r”选择项。fopen()查找由第一个参数说明的磁盘文件,并返回一个指向该文件的指针。如果这个文件不存在,fopen()函数返回一空指针。用“r”选择项打开的文件不能写。

如果为了写入,要建立一个新文件,使用“w”选择项。“w”选择项建立一个新文件,只能写入,不能读。如果磁盘上存在一个同名文件,就覆盖它,文件中原有的内容将丢失。

如果要向已存在的文件中增添内容,使用“a”选择项。这个选择项告诉fopen()函数为了写入,打开已存在的文件。如果打开成功,将读写指针移到当前文件的结尾,并从该位置开始写入。如果文件不存在,就建立一个相同名字的新文件。这种方式的文件只能写。

当需要同时读写一个文件时,可以使用“r+”、“w+”、“a+”三个选择项来扩充前三个选择项的功能。

·使用“r+”选择项,将r选择项的功能扩充为既允许读也允许写文件。

·使用“w+”选择项建立一个可读可写的新文件。

·使用a+可以从文件的当前位置开始往文件中添加内容,而且可同时读写文件。

在上述打开方式的基础上,附加“t”或“b”字符,则可指定按文本方式还是按二进制方式打开。如果不指定“t”或“b”,其缺省状态为文本方式。如:

·“rb”打开一个二进制文件,只读。

·“wb”打开一个二进制文件,只写。

·ab对一个二进制文件添加。

下面程序段说明如何以读出方式打开一个文件:

img678

如果要打开的文件不存在,fopen()函数返回NULL指针,也就是0,屏上显示出提示信息。exit()函数终止程序执行。为了避免文件打开失败时对文件产生破坏,通常在打开文件时,有必要增加这种检测语句,即当fp等于NULL时,打开文件失败,终止程序。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈