基础IO(c标准IO接口库)

fopen,fread,fwrite,fseek,fclose

接口实现方式:

(1)FILE* fopen(char* filename,char* mode);

filename:文件名
mode:文件打开方式——只读、只写、读写、追加写;

  • r :只读——若文件不存在,则打开失败;若存在,直接打开;
  • r+ :读写——若文件不存在,打开失败,若存在,直接打开;
  • w :只写——若文件不存在,则创建新文件,若存在,则清空文件原有内容打开文件;
  • w+ :读写——若文件不存在,则创建新文件,若存在,则清空文件原有内容打开文件;
  • a :追加写——每次写入文件数据时总是写入文件末尾;若文件不存在,则创建新文件;
  • a+ :追加读写——每次写入文件数据时总是写入文件末尾;若文件不存在,则创建新文;
  • b :fopen打开文件默认是文本文件,如果使用b,则表示进行二进制操作;**
(2)size_t fwrite(char* data,size_t block_size,size_t block_num,FILE* fp);

data : 要向文件中写入的数据;
block_size : 块大小;
block_num : 块个数;
fp : fopen返回的文件操作句柄(文件流指针);
返回值:成功返回实际操作个数,失败返回0;

block_size为strlen(字符串)的话,block_size为1,就能很好的确定字符串大小;

(3)size_fread(char* buf,size_t block_size,size_t block_num,FILE* fp);

返回值:实际操作的块个数(完整的块个数)
注意:返回0时,可能是失败,可能是读到了文件末尾;
例如:文件大小为10,块大小为100,块个数为1,则实际操作的块个数为0,返回值为0,表示读到了文件末尾;

(4)int fseek(FILE* fp,int offset,int whence)

fp:文件流指针;
offset:相对于指定位置(whence位置)的偏移量;
whence:SEEK_SET 起始位置;SEEK_CUR 当前位置;SEEK_END末尾位置;
返回值:成功返回0,失败返回-1;

©著作权归作者所有:来自51CTO博客作者赶路人丶的原创作品,如需转载,请注明出处,否则将追究法律责任

萌新成长

赞赏

0人进行了赞赏支持

更多相关文章

  1. 坚果云和亿方云哪个更适合企业?
  2. 文件系统和磁盘管理
  3. 20210206-1 Linux基础与应用(上)
  4. 20210221-1 Linux命令(下)
  5. 20210220-1 Linux命令(上)
  6. 查找命令汇总
  7. Linux文件管理——文件查找、打包及压缩【CentOS】
  8. Linux存储管理——EXT4文件系统【CenOs】
  9. Linux重定向管道——双通、三通管道一篇学会【CenOs】

随机推荐

  1. 八大经典排序算法基本思想及代码实现(插
  2. linux centos 宝塔主机控制面板安装和安
  3. Linux环境编译安装Mysql数据库
  4. Python--day56(前后台数据交互、bootstrap
  5. Python 3.4中的Pytesser:名称“image_to_
  6. C/C++与Python混合编程
  7. python的PIL绘制多行文本的图像。
  8. Linux内核配置文档
  9. Python编程系列教程第16讲——拷贝自身到
  10. python安装第三方的包 工具对比