Linux文件操作

一.四个系统调用函数
1.open
 


由OPEN(2)可知OPEN是系统调用函数。
int open(const char * pathname,int flag,/*int mode*/);
该系统调用函数有两个形参。
pathname为制定打开的文件路径+文件名;
flag为操作模式:O_RDONLY(以只读方式打开),O_WRONLY(以只写方式打开),O_RDWR(以读写方式打开),O_APPEND(把写入数据追加在文件的末尾),O_TRUNC(对文件进行清空);
mode为制定新创建文件的权限,只有在O_CREAT时才会需要;
函数返回值为-1时出错。
 


该截图为代码实现,结果为:
 


其中各项代表的含义:
 


2.read
 


使用man 2 read查看帮助手册。(2为系统调用函数,3为库函数)
int read (int fd,void * buff,int size);
该函数的形参:
fd为open返回值,文件描述符;
buff为指定获取的数据在程序中存储的起始位置;
size为本次最多读取的字节个数,一般为缓冲区的大小;
函数返回值为-1时出错,成功返回读到的字节个数。
 


代码实现的结果:
 


3.write
 


int write(int fd,void * buff,int datalen);
该函数的形参:
fd为指定需要写入文件的数据的起始位置;
buff为指定获取的数据在程序中存储的起始位置;
datalen为写入数据的长度;
函数返回值为-1时出错,成功返回写入的字节个数。
 


结果为:
 


4.close
 


int close(int fd);
该函数的形参:
fd为指定需要写入文件的数据的起始位置。
函数返回值为-1时出错,成功时返回-1。

二.文件复制实现
 


复制main.c文件并另取名file。
运行结果为:
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值