《Linux函数调用手册》之___fopen打开文件
定义:
FILE * fopen(const char * path,const char * mode);
表头文件:
#include<stdio.h>
说明:
参数path字符串包含欲打开的文件路径及文件名, 参数mode字符串则代表着流形态。
mode有下列几种形态字符串:
r 打开只读文件, 该文件必须存在。
r+ 打开可读写的文件, 该文件必须存在。
w 打开只写文件, 若文件存在则文件长度清为0, 即该文件内容会消失。若文件不存在则建立该文件。
w+ 打开可读写文件, 若文件存在则文件长度清为零, 即该文件内容会消失。若文件不存在则建立该文件。
a 以附加的方式打开只写文件。若文件不存在, 则会建立该文件, 如果文件存在, 写入的数据会被加到文件尾, 即文件原先的内容会被保留。
a+ 以附加方式打开可读写的文件。若文件不存在, 则会建立该文件, 如果文件存在, 写入的数据会被加到文件尾后, 即文件原先的内容会被保留。
上述的形态字符串都可以再加一个b字符, 如rb、w+b或ab+等组合, 加入b 字符用来告诉函数库打开的文件为二进制文件, 而非纯文字文件。不过在POSIX系统, 包含Linux都会忽略该字符。由fopen()所建立的新文件会具有S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH(0666)权限, 此文件权限也会参考umask值。
返回值:
文件顺利打开后, 指向该流的文件指针就会被返回。若果文件打开失败则返回NULL, 并把错误代码存在errno 中。
相关函数:
open, fclose
附加说明:
一般而言, 开文件后会作一些文件读取或写入的动作, 若开文件失败, 接下来的读写动作也无法顺利进行, 所以在fopen()后请作错误判断及处理。
示例:
返回顶部 | 《Linux函数调用大全》 | 《Linux命令大全》 | Linux专栏