师承陈立臣
一、open、creat、close
文件打开、创建、关闭。
参数与返回值
int open(const char *pathname, int flags)
/** 返回值 **
fd>0,文件打开成功且fd为文件标识符
fd<0,文件打开失败*/
/** 参数 **
pathname:文件路径+文件名(若不包含路径,则默认为当前路径)
flags: (1)O_RDONLY、O_WRONLY、O_RDWR、O_CREAT
(2)O_CREAT、O_APPEND、O_TRUNC*/
下面对flags(2)这类使用(|
)进行附加使用的参数进行额外说明:
(1)O_CREAT:文件若不存在则创建
注意:需要额外说明文件操作权限参数mode
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int main()
{
//尝试打开当前路径下的文件file1.c
int fd = open("./file1.c",O_RDWR);
//打开失败了
if(fd < 0){
printf("打开失败:没有这个文件\n");
//尝试以可读可写的方式创建并打开文件
fd = open("./file1.c",O_RDWR|O_CREAT,0600);
if(fd > 0){
printf("创建文件并且打开成功\n");
}
}
//关闭文件
close(fd);
return 0;
}
运行结