C语言实现的文件交互
2024-09-05 03:58:41
- 计算机与外部设备的交互依靠文件完成
文件是记录在外部介质上的数据的集合;例如1.c 是源码 1.exe可执行的文件
- 文件的分类
按组织结构:
记录文件:有一定结构的文件,可以解析成字段值的文件;
流式文件:对于源代码一类的属于流式文件(由一个个字符,字节按顺序组成) 按存储介质:
普通文件---存储介质文件(磁盘,磁带)
设备文件---非存储介质如显示器,键盘 打印机 按组织形式:
二进制文件:数据按其在内存中的原始形态存放 如果存入123 直接换算成二进制形式
文本文件:ASCII文件每个字节存放一个字符的ASCII 码(例如在文本写入123 1对应ASCII 49 2对应50 3对应51 分别把49,50,51换算为二进制,并存入字节)
文件的出现便于信息共享,数据和程序分离,数据的改变不影响程序的改变,文件还便于保存中间结果
- 文件的标识符
也就是文件的后缀名,什么样的文件用什么样的标识符,由操作系统决定
- 流
简化了编程的过程,操作,读写设备就是操作,读写数据的过程,是否正确输入/输出了数据,流可以屏蔽技术细节,主要用于设备文件和系统的通信,只要按照统一接口,就可以操作设备,数据搬运的过程就是流,
无须关心I/O设备
- 文件处理
缓冲文件系统
下载文件十分伤害磁盘,这时文件缓冲区就派上了用场,不妨下载到一定程度,一并写入磁盘,主要是提升磁盘的寿命
.系统开辟内存缓冲区 .用户自己设定文件缓冲区
比如我们可以通过重定向把文件输出到相关设备文件
非缓冲文件系统
- 文件类型指针
void main()
{
char words[] = "喜欢企鹅人和谜语人\n";
fputs(words, stdout);//stdout就是屏幕显示器
FILE *p = stdout;
fputs("哦~尼格码!where are you?\n",p);
system("pause");
}
最新文章
- Form authentication(表单认证)问题
- Kinect 骨骼追踪对象选择
- 【LeetCode】Sum of Two Integers
- excel中如何批量将所有的网址设为超链接
- System.exit()方法的作用
- 【原创】Android多个xml文件的使用
- HtmlTestRunner无法生成HTML报告问题
- Node.js--安装express以及创建第一个express项目(windows)
- 微信小程序如何动态增删class类名
- Entry
- EF Core 2.0使用MsSql/Mysql实现DB First和Code First
- Java中Enumeration接口的用法
- 重新认识python
- Hadoop 配置文件 &; 启动方式
- 使用 kbmmw 的ORM开发纯REST数据库访问服务
- Android开发(十)——像素单位dp、px、pt、sp的比较
- Lua------------------unity与lua的热更新
- 【代码审计】BootCMS v1.1.3 文件上传漏洞分析
- Restframework 视图组件与序列号组件的应用.
- Alamofire源码导读四:统计信息
热门文章
- The request was aborted: Could not create SSL/TLS secure channel
- c# sqlite 导入,升级
- 去掉右键Open Folderas Intellij IDEA Project
- JavaIO -- Reader 和 Writer
- 【坑】使用IDEA创建maven的时候,提示缺少plugin-clean 等
- Bean的三种实例化方式
- python中列表之间求差集、交集、并集
- (九)Redis之集群概述(转)
- (四)XML基础(客户端和服务端发送与接收xml数据)
- .htaccess 转 SAE AppConfig