文件的创建与删除

1.创建文件函数 creat
  函数creat的作用是在目录中建立一个空文件夹  该函数的定义如下所示
int creat (char *pathname,mode_t mode);
函数的参数pathname指定将要建立的文件夹,如果没有则创建  mode表示这个文件的权限
使用该函数时,需要在程序的前面加上下面的三个头文件。
#include <sys/types.h>
#include <sys/stat.h>
#include <fcnt1.h>
创建失败返回-1
2.删除文件函数remove
  函数remove的作用是删除一个文件,这个函数定义如下所示
  int remove(char *pathname)
参数pathname表示需要删除的目录, 删除成功返回0,否则返回-1.
加头文件#include<stdio.h>
3.建立临时文件函数 mkstemp
 临时文件指的是程序运行时为了存储中间数据建立的文件,计算机重启时这些文件会被系统删除。
  int mkstemp(char *template);
参数template表示需要临时文件的文件名字符串。文件名字符串中最后6个字符必须是XXXXXX。mkstemp函数会以读写模式和0600权限来打开文件,如果文件不存在则建立该文件  返回值是打开文件的句柄, 如果不成功则返回-1。

文件的打开和关闭

1打开文件函数 open
int open(char *pathname,int flags);
int open(char *pathname,int flags,mode_t mode);
pathname  为打开路径  flags是系统定义的一些整形常数,表示文件的打开方式
    1:O_RDONLY:以只读方式打开文件。
    2:O_WRONLY:以只写方式打开文件。
    3:O_RDWR:以可读写方式打开文件。
以上三个旗标是互斥的,可以与以下的标志参数用|运算符合用
    1:O_CREAT  如果打开不存在就创建
    2:O_EXCL   如果O_CREAT已被设置,此指令会去检查文件是否存在  文件若不存在则建立该文件,否则将导致打开文件错误
    3:O_NOCTTY  如果要打开的文件为终端机设备,则不会将该终端机当成进程控制终端机
包含头文件
 #include<sys/types.h>
 #include<sys/stat.h>
 #include<fcnt1.h>

2关闭文件函数close
关闭一个已经打开的文件  不再使用的文件需要使用close函数关闭,关闭文件操作会让数据写回磁盘,并释放该文件所占用的资源
int close(int fd);
参数fd是用来打开open函数文件时返回的文件句柄。 如果成功关闭文件则返回0,发生错误返回-1;
需要加入的头文件 #include <unistd.h>

3.文件读写

1.写文件函数write
 write函数可以把指定长度的数据写入到一个已经打开的文件中
 定义如下:ssize_t write(int fd,void *buf,size_t count);
在参数列表中,fd是已经打开的文件句柄。buf是存放写入数据缓存的头指针。count是一个size_t类型的变量,表示希望写入文件的字符个数,size_t类型相当于是整形
  写入成功write函数返回实际写入的字节数  发生错误时 返回-1
2.读取文件函数read
ssize_t read(int fd,void *buf,size_t count);
在参数列表中 fd表示已经打开文件的句柄 buf是指向存放数据内存的指针,从文件读取出来的数据会存放到buf指针所指向的内存。count表示需要读取字符的个数。返回值表示实例读取到的字符的个数。如果返回值为0,表示已经到达文件末尾或文件中没有内容供读取。 在读文件时,文件的读写位置会随着读取到的字符移动
 发生错误发生时,返回值为-1.
3.将缓冲区数据同步到磁盘的函数  sync
int sync(void)
sync函数会扫描当前程序已经打开的文件,把数据同步到磁盘。此函数没有参数,返回值为0.
 需要包含的头文件 #include<unistd.h>
将指定文件的缓冲区数据同步到磁盘的函数fsync
fsync函数的作用是将缓冲区的数据写入磁盘  定义如下 int fsync(int fd);
参数fd是文件句柄  函数 如果执行成功 则返回0,否则返回-1;
与sync函数不同的是函数fsync可以指定打开文件的编号  执行以后会返回一个值。

11月03日 星期四相关推荐

  1. The Wide and Deep Learning Model(译文+Tensorlfow源码解析) 原创 2017年11月03日 22:14:47 标签: 深度学习 / 谷歌 / tensorf

    The Wide and Deep Learning Model(译文+Tensorlfow源码解析) 原创 2017年11月03日 22:14:47 标签: 深度学习 / 谷歌 / tensorfl ...

  2. 【财经期刊FM-Radio|2020年11月03日】

    title: [财经期刊FM-Radio|2020年11月03日] 微信公众号: 张良信息咨询服务工作室 [今日热点新闻一览↓↓] 道指涨超400点,科技股拖累纳指一度转跌,蔚来再创新高,油价自日低反 ...

  3. 每天热点新闻早报十二条 365资讯简报 2020年11月26日 星期四

    365资讯简报,每天推送12条精选新闻和一条励志语录,一分钟看报,60s读懂世界! [365资讯简报]每天一分钟,知晓天下事!2020年11月26日 星期四 农历十月十二 感恩节 1.世卫:全球每3名 ...

  4. 学习笔记(11月03日)

    三周五次课(11月3日) 1.生成式和生成器 1.1列表生成式是python受欢迎的语法之一,通过一句简洁的语法就可以对一组元素进行过滤,还可以对得到的元素进行转换处理. 语法格式为: [exp fo ...

  5. 【每日医信资讯】2022年11月03日-综合医讯一览

    一.行业 · 国家市场监管总局和国家标准委发布医疗器械行业质量管理体系和风险管理两大体系标准升级 2022年11月2日获悉,国家市场监管总局.国家标准委发布了医疗器械行业质量管理体系和风险管理两大体系 ...

  6. 互联网晚报 | 11月25日 星期四 | 花呗启动品牌隔离;小米MIUI全球月活用户突破5亿;《长津湖》成中国影史票房冠军...

    今日看点 ✦ 电影<长津湖>票房超56.94亿,超越<战狼2>成中国影史票房冠军 ✦ 小米宣布MIUI全球月活用户突破5亿,MIUI 13蓄势待发 ✦ 花呗宣布启动品牌隔离,将 ...

  7. 11月03日解题报告

    考试心得 今天的考试应该还算在状态的吧,第一题虽然在lemon上面只有30分,但是在洛谷上是A掉了,emmm-虽然是这样但还是要注意不要开太大才是,毕竟不怕一万就怕万一嘛-还是要注意一下就是- 第一题 ...

  8. 导航狗信息导航网站首页源代码(2017年11月03日版)

    导航狗信息导航网址:http://www.daohanggou.wang/ <html><style> body{ text-align:center} .div1{ marg ...

  9. 腾讯QQ2007II Beta2传美版v2.2[2007年11月26日更新]

    ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡ ≡      腾讯QQ2007II Beta1传美版v2.0    ≡ ≡     欣欣社区传美工作室 [CM Studio]   ≡ ≡          ...

最新文章

  1. threadx 信号量 应用_ThreadX——IPC应用之事件标志
  2. AD5272数字变阻器
  3. 如何自学python数据分析-如何轻松学习Python数据分析?
  4. (学)DEV在设计界面部分组件显示红叉并报错的问题
  5. 大数据在高校的应用场景_高校大数据及AI应用解决方案
  6. Spark创建RDD的四种方式(一):从集合(内存)中创建 RDD代码示例
  7. jenkins war包_Jenkins的安装和部署(jenkins教程)
  8. ElasticSearch+NLog实现.net core分布式日志管理
  9. python_day29_通过类创建多线程_队列
  10. 007-配置IP和DNS
  11. 项目缺少包如何和服务器,解决缺少服务器依赖包问题
  12. 每天学一点flash(6) FLASH 8 和 FLASH CS3 加载外部文本的区别 (转载)
  13. android开发笔记之多媒体—播放音频(音乐)
  14. ipython安装成功后用不了_Python常用工具ipython安装与使用
  15. html实现字体加边框及填充
  16. 英语聊天时“好的”、“我知道了”、“收到”、“嗯嗯”之类的怎么说?
  17. QCustomPlot系列(2)-绘制两条曲线+自动全显+鼠标拖放+rescaleAxes()函数简介
  18. 《机器学习算法竞赛实践》学习笔记(1)神经网络
  19. 两数互素有什么性质_如何定义两个数互素的程度?
  20. 苹果iPad Pro为什么选择激光雷达?

热门文章

  1. ExaGrid在2021年网络计算大奖评选中大获全胜
  2. 孤独的日子,往往是你迅速成长的日子
  3. 银行资产负债表-分科目详细解释
  4. java缩放图片_java 图片缩放(2)
  5. 【硬见小百科】高速PCB设计中的阻抗匹配
  6. 计算机网络学网络制图吗,计算机网络论文发表简述计算机设计制图教学改革
  7. 线性回归模型预测利润
  8. 京东裁员的背后,只会“点点点”的你,真的能度过这一次疫情带来的裁员潮吗?
  9. Vue生命周期及store
  10. MySQL No compatible servers were found.You’ll need to cancel this wizard and install one