0%

C语言文件操作——fopen()函数

在C语言中,<stdio.h>头文件中的fopen()函数可用于(以文本文件或二进制文件的方式)打开文件,其调用方法为

FILE * fopen(const char * path, const char * mode);

FILE为是<stdio.h>头文件中的一个专门用来保存文件信息的结构体,不需要知道其具体结构,只需要知道用法即可;path为文件路径;mode为打开方式。

当文件打开出错时,fopen()函数返回一个空指针NULL;如果定义一个FILE类型的指针*fp用于接收fopen()函数的反馈,则可判断目标文件是否打开成功。

举个栗子:

#include<stdio.h>
int main(void)
{
FILE *fp;
if((fp=fopen("G:\\来自 Dev-C++\\练习.txt","r"))!=NULL)
{
printf("目标文件打开成功");
}
else
{
printf("目标文件打开失败");
}
return 0;
}

文件打开方式由r(读)、w(写)、a(追加)、+(读和写)、t(文本文件)、b(二进制文件)六个字符表示;调用fopen()函数时必须指明读写权限,但可以不指明读写方式(此时读写方式默认为t);读写权限和读写方式可以组合使用,但不能将读写方式放置在读写权限的开头

打开方式 说明
r 以只读方式打开文件,文件必须存在
r+ 以读/写方式打开文件,文件必须存在
rb+ 以读/写方式打开一个二进制文件,只允许读/写数据
rt+ 以读/写方式打开一个文本文件,允许读和写
w 打开只写文件。若文件存在,则长度清零;若文件不存在,则新建文件
w+ 打开可读/写文件。若文件存在,则长度清零;若文件不存在,则新建文件
a 以追加内容的方式打开只写文件。若文件不存在,则新建文件;若文件存在,则向文件追加内容(EOF符保留
a+ 以追加内容的方式打开可读/写的文件。若文件不存在,则新建文件;若文件存在,则向文件追加内容(原来的EOF符保留)
wb 以只写方式打开或新建一个二进制文件,只允许写入
wb+ 以读/写方式打开或新建一个二进制文件,允许读和写
wt+ 以读/写方式打开或新建一个文本文件,允许读和写
at+ 以读/写方式打开一个文本文件,允许读或追加内容
ab+ 以读/写方式打开一个二进制文件,允许读或追加内容

如有错误,请在评论留言,非常感谢( ^ω^)。

本文整理自

C语言fopen函数的用法,C语言打开文件详解

C语言fopen()函数:打开一个文件并返回文件指针