Linux——IO操作方法

it2023-10-14  64

1.打开文件

int open(const *filename,int flag,/*int mode*/)

成功返回一个文件描述符(大于等于0的整数值),失败返回-1;

filename : 文件路径+文件名 flag : 打开的标记 包含头文件:#include<fcntl.h>

O_RDONLY : 只读O_WRONLY : 只写O_RDWR : 读写O_APPEND: 追加O_TRUNC:清空O_CREAT :创建

mode:只有flag有O_CREAT,才需要第三个参数,指定创建的文件访问权限。

2.读取文件内容

int read(int fd,void *buf,int size);

失败返回-1,0已经读到文件末尾,>0真实读到的数据长度

fd : open返回的文件描述符buf:用户缓冲区,用于存储从文件中读取的数据size:用户缓冲区的大小,指定一次read最多能够读取的数据长度,单位是字节

3.向文件写入内容

int write(int fd, void *buf,int length);

失败返回-1,0没有写入任何内容,>0真实写入的数据长度

fd : open返回的文件描述符buf : 想写入文件中的数据的首地址length:写入数据的长度

4.关闭打开文件

int close(int fd);

5.操作读写游标

int lseek(int fd,int count,int flag);

失败返回-1,成功返回0

fd : open返回的文件描述符count:移动的大小flag:相对位置–SEEK_SET ,SEEK_CUR ,SEEK_END
最新回复(0)