目录
1. 为什么使⽤⽂件?
如果没有⽂件,我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失了,等再次运⾏程序,是看不到上次程序的数据的,如果要将数据进⾏持久化的保存,我们可以使⽤⽂件。
2. 什么是⽂件?
磁盘(硬盘)上的⽂件是⽂件。
但是在程序设计中,我们⼀般的⽂件有两种:程序⽂件、数据⽂件(从⽂件功能的⻆度来分类
的)。
2.1 程序⽂件
程序⽂件包括源程序⽂件(后缀为.c),
⽬标⽂件(windows环境后缀为.obj),
可执⾏程序(windows 环境后缀为.exe)。
2.2 数据⽂件
⽂件的内容不⼀定是程序,⽽是程序运⾏时读写的数据,⽐如程序运⾏需要从中读取数据的⽂件,或者输出内容的⽂件。
2.3 ⽂件名
⼀个⽂件要有⼀个唯⼀的⽂件标识,以便⽤⼾识别和引⽤。
⽂件名包含3部分:⽂件路径+⽂件名主⼲+⽂件后缀
例如:
c:\code\test.txt
为了⽅便起⻅,⽂件标识常被称为⽂件名。
3. ⼆进制⽂件和⽂本⽂件?
根据数据的组织形式,数据⽂件被称为
⽂本⽂件
或者
⼆进制⽂件
。
数据在内存中以⼆进制的形式存储,如果
不加转换的输出
到外存的⽂件中,就是
⼆进制⽂件
。
如果要求在外存上以ASCII码的形式存储,则需要在存储前转换。以
ASCII字符
的形式存储的⽂件就是⽂本⽂件。
⼀个数据在⽂件中是怎么存储的呢?
字符⼀律以ASCII形式存储,数值型数据既可以⽤ASCII形式存储,也可以使⽤⼆进制形式存储。
4. ⽂件的打开和关闭
4.1 流和标准流
4.1.1 流
我们程序的数据需要输出到各种外部设备,也需要从外部设备获取数据,不同的外部设备的输⼊输出
操作各不相同,为了
⽅便
程序员对各种设备进⾏⽅便的操作,可以把
流
想象成
流淌着字符的河
。
C程序针对⽂件、画⾯、键盘等的数据输⼊输出操作
都是通过流操作
的。