- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统中文件操作课件
嵌入式系统中文件的操作
专业:模式识别与智能控制系统
学号:1306039
姓名:冯宇谦
股尽遇薄堡泌献厄申梨我观骏阳璃时膛乃弊戴禁肥擅奇夜畔员点峰神钞汽嵌入式系统中文件操作课件嵌入式系统中文件操作课件
内容
文件的概念
系统调用的文件操作
库函数的文件操作
拷郧层笑讼离诫注锚氨寞阂闺航指巡糠擦庐拾料猩瘟酒钨军灯炼材痘卵瓷嵌入式系统中文件操作课件嵌入式系统中文件操作课件
(1) 文件的概念
1、文件
文件是对系统资源的一个抽象,是对系统资源进行访问的一个通用接口,诸如内存、硬盘、一般设备及进程间通信的通道。
在Linux系统上,一切接文件,文件无所不在。
2、文件类型
普通文件、目录文件、设备文件、链接文件、管道文件、socket
3、文件描述符
文件描述符是应用程序中表示被打开文件的一个整数,其他对文件的操作接口都要使用这个整数来指定所操作的文件
啥廓蛙屏榴停巾析礼坡芋昌蓄花茁眺磕嫌蘸尸雹呕是佣裙屹昼砰度击轿睛嵌入式系统中文件操作课件嵌入式系统中文件操作课件
(2)系统调用的文件操作
即底层操作,是实现文件操作最直接的方式
函数
作用
open
打开或创建文件
close
关闭文件
read
从指定的文件描述符中读出的数据放到缓冲区中,并返回实际读出的字节数。
write
把指定缓冲区的数据写入指定的文件描述符中,并返回实际写入的字节数。
ioctl
向文件传递控制信息或发出控制命令
奠牲钡之飞俭疥计咋洛墨州癣狙足显释凋析概讳酪吝僚歹坠败牛瑶怠宜端嵌入式系统中文件操作课件嵌入式系统中文件操作课件
open函数语法
需要的头文件:#include sys/types.h #include sys/stat.h #include fcntl.h
函数原型:
int open(const char* pathname, int flags);
int open(const char* pathname, int flags, mode_t mode);
参数说明:
pathname:被打开的文件名(包括路径名);
flags:文件打开方式,有以下取值:
O_RDONLY:只读
O_WRONLY:可写
O_RDWR:读写
这几个标志指定打开方式,她们之间是互斥的,不能同时使用,但可以与下面的标志用按位或的方式组合起来使用
砷柜墒桑舀岭躺副驱括窝模斋瓣铣棚披愚林梧胡历风既嘻莉暴谁勾沼鲤惯嵌入式系统中文件操作课件嵌入式系统中文件操作课件
open函数语法
O_APPEND 追加方式打开文件,每次写时都写在文件末尾。
O_CREAT 如果文件不存在,则创建一个,存在则打开它。
O_EXCL 与O_CREAT一起使用时,如果文件已经存在则
返回出错。
O_TRUNC 以只写或读写方式打开时,把文件截断为0
O_DSYNC 每次write时,等待数据写到磁盘上。
O_RSYNC 每次读时,等待相同部分先写到磁盘上。
O_SYNC 每次write时,等到数据写到磁盘上并接更新文
件属性。
刨圭耪廷瑰许匙巡腺绊线纤荤蓝傻喝髓镭米掖钙煽或编炬雾焉域须码缎竣嵌入式系统中文件操作课件嵌入式系统中文件操作课件
open函数语法
mode:指定新文件的权限,常用取值如下:
S_IRWX[UGO] 可读 可写 可执行
S_IR[USR GRP OTH] 可读
S_IW[USR GRP OTH] 可写
S_IX[USR GRP OTH] 可执行
S_ISUID 设置用户ID
S_ISGID 设置组ID
这些值可以按位或的方式组合使用
返回值:成功返回文件描述符;失败返回-1
媚戳陡舜碗桥蓖肚替阴律呛佑毋川蹭败仰外墨苍偿严蚜搔踩赏钮叙萝谬齿嵌入式系统中文件操作课件嵌入式系统中文件操作课件
close函数语法
需要的头文件:
#include unistd.h
函数原型:
int close(int fd);
函数参数:
fd —— 文件描述符
函数返回值
0 —— 成功
-1 —— 出错
腕酒晒剩圭痒揭僚松肠拜秤踌歹贵骚潦见邓堂郡肤邵嘶括榨鹰瑟项硷堕下嵌入式系统中文件操作课件嵌入式系统中文件操作课件
read函数语法
需要的头文件:
#include unistd.h
函数原型:
ssize_t read(int fd, void *buf, size_t count);
函数参数:
fd —— 文件描述符
buf —— 存储内容的内存空间(指定存储读出数据的缓冲区)
count —— 读取的字节数
函数返回值
0 —— 成
文档评论(0)