失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > linux c语言 写文件 linux c通过文件描述符以及write和read方法对文件进行读写

linux c语言 写文件 linux c通过文件描述符以及write和read方法对文件进行读写

时间:2022-08-07 07:07:04

相关推荐

linux c语言 写文件 linux c通过文件描述符以及write和read方法对文件进行读写

1、write和read方法讲解

#include

ssize_t read(int fd, void *buf,size_t count);

fd为文件描述符,buf缓冲区指针,count表示要读取的字节数

返回:读到的字节数,若已经到文件尾端返回0,出错返回-1

#include

ssize_t write (int fd, void *buf, size_t count);

fd为文件描述符,buf缓冲区指针,count表示要写的字节数

返回:若成功已写的字节数,若出错为-1

2、代码实现读写

比如在/home/chenyu/Downloads/chenyu文件进行写和读

#include

#include

#include

#include

#include

#include

//特么你这里要注意了,不需要写=号,字符串记得加双引号

#define FILEPATH "/home/chenyu/Downloads/chenyu"

#define SIZE 100

//读写方式打开,向文件添加内容从文件尾开始写

#define FLAGS O_RDWR | O_APPEND

int main()

{

int count = 0;

const char *pathname = FILEPATH;

printf("%s", pathname);

int fd;

char data[SIZE];

if ((fd = open(pathname, FLAGS)) == -1) {

printf("open file fail\n");

return 0;

}

printf("open file success\n");

printf("请输入字符串\n");

scanf("%s", data);

count = strlen(data);

printf("show data:%s\n", data);

printf("data length is %d\n", count);

if (write(fd, data, count) == -1) {

printf("write data fail\n");

return 0;

}

printf("write data success\n");

// close(fd);

fd = open(pathname, O_RDONLY);

char content[100];

read(fd, content, sizeof(content));

printf("chenyu content is %s\n", content);

return 0;

}

3、结果展示

如果觉得《linux c语言 写文件 linux c通过文件描述符以及write和read方法对文件进行读写》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。