浅谈文件操作 2022-4-11学习复盘

为什么使用文件?因为我们在编辑VS程序中,如果不使用文件操作时,我们在VS所进行的操作在关闭程序时就不会得到保存,如果需要记忆那么就需要使用文件操作,它可以记录我们的数据在硬盘上。

文件指针是我们在文件操作时非常重要的概念,每个被使用的文件都在内存中开辟了一个相应的文件信息区,用来存放文件的相关信息这些信息是保存在一个结构体变量中的。该结构体类型是有系统 声明的,取名FILE.

“r”(只读)输入    “w”(只写)输出          “a”(追加)
“rb”(二进制)输入       “wb”(二进制)输出
“ab”(追加)(二进制)向一个二进制文件尾添加数据
“r+”(读写)为了读和写,打开一个文本文件
“w+”(读写)为了读和写,建议一个新的文件
“a+”(读写)打开一个文件,在文件尾进行读写
“rb+”(读写)为了读和写打开一个二进制文件
“wb+”(读写) 为了读和写,新建一个新的二进制文件
“ab+”(读写)打开一个二进制文件,在文件尾进行读和写
fgetc 输入字符      fputc 输出字符
fgets输入文本(一串)     fputs输出文本(一串)
这四个都是针对所有输入输出流
fscanf 格式化输入(针对所有输入流)   fprintf格式化输出(针对所有输出流)
fread二进制输入(文件 )      fwrite 二进制输出(文件 )
注意fread输入的结果为二进制我们是无法看懂的,需要配合fwrite一起使用。
对比
scanf    针对标准输入(stdin)                     printf针对标准输出(stdout)
fscanf   针对所有输入                                    fprintf针对所有输出
sscanf  从字符串中读取一个格式化的数据    sprintf从一个格式化的数据转化字符串
文件的随机读写
fseek 根据文件指针的位置和偏移量来定位文件指针,有三种设置(SEEK_CUR)正常偏移(SEEK_END)直接指到末尾(SEEK_SET)回到最原始
ftell(判断当前的偏移量)
rewind(让指针回到初始位置)
文件读取结束的判定
ferror和feof的正确使用方式
fgetc 判断是否为 EOF .
fgets 判断返回值是否为 NULL
 if (ferror(fp))(为假)
       puts("I/O error when reading");
   else if (feof(fp)) (为 真)
       puts("End of file reached successfully");

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值