11月03日 星期四

文件的创建与删除


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可以指定打开文件的编号  执行以后会返回一个值。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 、2项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 、资5源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值