linux -> c/c++ 之文件的基本操作

15 篇文章 0 订阅

打开文件/创建文件

#include <fcntl.h>
int open(const char * path_name,int flag); //打开现有的文件
int open(const char *path_name.int flag,mode_t mode); //打开
文件,如果文件不存在,则创建他  

int create(const char * path_name,mode_t mode); //创建文件 (不打开)

@ path_name :文件名(包含路径)
@ flag:指定文件的打开方式
- 只读:O_RDONLY
- 只写:O_WRONLY
- 读写:O_RDWR
以上3个常量只可以互斥使用(只可以用一个)
- O_CREATE 当文件不存在时创建它,此时需要使用第三个参数
- O_TRUNC 截断
- O_APPEND 追加
- O_NONBLOCK/O_NDELAY 以非阻塞的方式打开
- O_SYNC 以同步i/o的方式打开,任何写操作都会使进程被阻塞
以上常量可以用 | 连接
@mode :定义被创建的文件的读写等管理权限
常量以 S_开头 ,后边接权限的缩写
u g o a 分别代表 所有者 所属组 其他人 全部
r w x 读 写 执行
@返回值 文件描述符 fd

关闭

#include <unistd.h>
int close(int fd)

@fd 文件描述符

将数据写/读文件 / 文件偏移量计算

#include<unistd.h>
ssize_t write(int fd,void * buf, size_t count);
ssize_t read(int fd,void *buf, size_t count);
off_t lseek(int fds,off_t offset,int whence);

@ offset :文件偏移量
@ whence:
- SEEK_SEK :设置起始偏移量为文件开始的位置
- SEEK_CUR:设置起始偏移量为当前偏移量
- SEEK_END : 设置起始偏移量为文件末尾

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值