当前位置: 首页 > ai >正文

【C语言】文件操作(续)

 目录

复习:

一·⽂件的顺序读写

例子:


前言:

在上篇文章中介绍了文件的类型,文件指针,流,操作的函数。

在本篇文章继续为大家带来文件细节分享,如 顺序读写等等。

复习:

fopen是C语言中用于打开文件的函数。 

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

常用打开模式:

模式描述
"r"只读方式打开文本文件
"w"只写方式创建/覆盖文本文件
"a"追加方式打开/创建文本文件
"rb"只读方式打开二进制文件
"wb"只写方式创建/覆盖二进制文件
"ab"追加方式打开/创建二进制文件
"r+"读写方式打开文本文件
"w+"读写方式创建/覆盖文本文件
"a+"读写方式打开/创建文本文件

fclose是C语言中用于关闭文件的函数。

int fclose(FILE *stream);

 例子:

#include <stdio.h>
int main()
{FILE* pf=fopen("Project179", "r");if (pf = NULL){perror("shibai ");return 1;}else{printf("打开陈工");}return 0;
}

一·⽂件的顺序读写

文件的顺序读写是指按照文件中数据的顺序逐个读取或写入数据。

顺序读写函数介绍:

函数名

功能

适⽤于

fgetc

字符输⼊函数

所有输⼊流

fputc

字符输出函数

所有输出流

fgets

⽂本⾏输⼊函数

所有输⼊流

fputs

⽂本⾏输出函数

所有输出流

fscanf

格式化输⼊函数

所有输⼊流

fprintf

格式化输出函数

所有输出流

fread

⼆进制输⼊

⽂件

fwrite

⼆进制输出

⽂件

如何更好的记忆呢?

以fgetc为例子:

f指file     个体表示获取  c指的是字符 character  所以fgetc是从文件读取一个字符

 上⾯说的适⽤于所有输⼊流⼀般指适⽤于标准输⼊流和其他输⼊流(如⽂件输⼊流);

所有输出流⼀般指适⽤于标准输出流和其他输出流(如⽂件输出流)。

 这里可以看出fputc如何使用的了,前一个参数是要输入的字符,后一个参数是地址 。

大家可以去C语言官网去搜索对应的函数。

如何使用:

#include <stdio.h>
int main()
{FILE* pf = fopen("dest.c", "w");if (pf == NULL){perror("fopen");return 1;}fputc('a',pf);fclose(pf);pf = NULL;return 0; }

改善:

这里还可以使用for循环的方法,输入字符,如下:

#include <stdio.h>
int main()
{FILE* pf = fopen("dest.c1", "w");if (pf == NULL){perror("fopen");return 1;}//fputc('a',pf);for (int i = 'a';i <= 'z';i++){fputc(i, pf);}fclose(pf);pf = NULL;return 0; }

http://www.xdnf.cn/news/4593.html

相关文章:

  • 一个用C#开发的记事本Notepads开源编辑器
  • Python实现中文数字与阿拉伯数字映射生成器(支持0-9999)
  • WebFlux与HttpStreamable关系解析
  • HuggingFace与自然语言处理(从框架学习到经典项目实践)[ 01 API操作 ]
  • 极简远程革命:节点小宝 — 无公网IP的极速内网穿透远程解决方案
  • 《开源先锋Apache软件基金会:历史沿革、顶级项目与行业影响》
  • 新能源汽车赛道变局:传统车企子品牌私有化背后的战略逻辑
  • java 破解aspose.words 18.6 使用
  • 如何使用 QuickAPI 推动医院数据共享 —— 基于数据仓库场景的实践
  • 学习笔记:数据库——事务
  • 启智平台调试 qwen3 4b ms-swift
  • 基于Kubernetes的Apache Pulsar云原生架构解析与集群部署指南(下)
  • IEEE出版|2025年通信网络与智能系统工程国际会议(CNSE2025)
  • uniapp中score-view中的文字无法换行问题。
  • 《spark》
  • 设计模式-策略模式
  • C++ 工具链与开发实践:构建安全、高效与创新的开发生态
  • C++之“继承”
  • C++面向对象编程入门:从类与对象说起(一)
  • 正则表达式实战指南:原理、口诀与高频场景案例
  • 如何在 C# 和 .NET 中打印 DataGrid
  • 【即插即用涨点模块】DSConv动态蛇形卷积:自适应聚焦细长弯曲的局部结构特征,助力分割高效提点【附源码+注释】
  • 【无标题】阿达萨达
  • 安卓基础(封装引用)
  • 视频编解码学习9之照相机历史
  • 【 Redis | 实战篇 短信登录 】
  • 区块链内容创作全攻略:海报、白皮书与视频的视觉化革命
  • idea出现tomcat不能正确部署的问题--解决方案
  • 用电信息采集中的天线种类
  • 链表的面试题4之合并有序链表