基于其前面的对文件的打开,这次我们了解下对文件的写入;
首先,老样子,在终端下输入下面命令:
man 2 write
#include <unistd.h>//需要包含的头文件
ssize_t write(int fd, const void *buf, size_t count);
//fd:文件的描述符,已确定要写入哪一个文件
//buf:缓冲区,对指定文件要写入的内容,
//count:写入多少个字节。
基于前面第文件打开的代码,体验下write这个函数
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
int main()
{
int fd;
char *buf = " I love China !";
fd = open("./file1",O_RDWR);
if(fd == -1)
{
printf("open file1 failed\n");
fd = open("./file1",O_RDWR|O_CREAT,0600);
if(fd > 0 )
{
printf("creat file1 success !\n");
}
}
printf("fd = %d \n",fd);
write(fd,buf,strlen(buf));
close(fd);//写入后进行关闭,在终端输入man 2 close可以知道
return 0;
}
这样就可以把我爱中国写入file1这个文件里,打开file1文件可以看到。