当前位置: 代码迷 >> 综合 >> C语言(文件操作)
  详细解决方案

C语言(文件操作)

热度:78   发布时间:2024-01-24 17:27:17.0

标准文件

标准输入文件 stdin(键盘)、标准输出文件 stdout(显示器)、标准错误文件 stderr(显示器)是由系统打开的,可直接使用。

打开文件fopen

即程序和文件建立连接,打开文件之后,程序可以得到文件的相关信息,例如大小、类型、权限、创建者、更新时间等。在后续读写文件的过程中,程序还可记录当前读写到了哪个位置。

函数原型

头文件<stdio.h>

FILE *fopen(char *filename, char *mode);

fopen() 函数的返回值

获取文件信息,包括文件名、文件状态、当前读写位置等,并将这些信息保存到一个 FILE 类型的结构体变量中,然后将该变量的地址返回。

FILE *fp;

if( (fp=fopen("D:\\demo.txt","rb") == NULL ){

printf("Fail to open file!\n");

exit(0); //退出程序(结束程序)

}

打开方式说明

"r" 以“只读”方式打开文件。只允许读取,不允许写入。文件必须存在,否则打开失败。

"w" 以“写入”方式打开文件。如果文件不存在,那么创建一个新文件;如果文件存在,那么清空文件内容(相当于删除原文件,再创建一个新文件)。

"a" 以“追加”方式打开文件。如果文件不存在,那么创建一个新文件;如果文件存在,那么将写入的数据追加到文件的末尾(文件原有的内容保留)。

"r+" 以“读写”方式打开文件。既可以读取也可以写入,也就是随意更新文件。文件必须存在,否则打开失败。

"w+" 以“写入/更新”方式打开文件,相当于w和r+叠加的效果。既可以读取也可以写入,也就是随意更新文件。如果文件不存在,那么创建一个新文件;如果文件存在,那么清空文件内容(相当于删除原文件,再创建一个新文件)。

"a+" 以“追加/更新”方式打开文件,相当于a和r+叠加的效果。既可以读取也可以写入,也就是随意更新文件。如果文件不存在,那么创建一个新文件;如果文件存在,那么将写入的数据追加到文件的末尾(文件原有的内容保留)。

"t" 文本文件。如果不写,默认为"t"。

"b" 二进制文件。

关闭文件fclose()

文件关闭,以释放相关资源,避免数据丢失。

函数原型

int fclose(FILE *fp);

函数返回值

文件正常关闭时,fclose() 的返回值为0,如果返回非零值则表示有错误发生

  相关解决方案