1.什么是文件?
磁盘或者是说硬盘上的文件就是文件。在程序设计中,我们⼀般谈的文件有两种:程序文件、数据文件。
2.文件名
⼀个文件要有⼀个唯⼀的文件标识,以便识别和引用。
例如: c:\ files\ test.txt
3. ⼆进制文件和文本文件
数据文件被称为文本文件或者⼆进制文件,数据在内存中以⼆进制的形式存储,,就是⼆进制文件。 如果要求在外存上以ASCII码的形式存储,则需要在存储前转换。以ASCII字符的形式存储的文件就是文本文件。
4. 文件的打开和关闭
4.1流和标准流
定义:程序的数据需要输出到各种外部设备,也需要从外部设备获取数据,不同的外部设备的输入输出 操作各不相同,为了方便程序员对各种设备进行方便的操作,我们抽象出了流的概念,我们可以把流想象成流淌着字符的河。
我们要想向流里写数据,或者从流中读取数据,都是要打开流,然后操作。
在C语言程序在启动的时候,默认打开了3个流:
• stdin - 标准入流,在大多数的环境中从键盘输入,scanf函数就是从标准输入流中读取数据。
• stdout - 标准输出流,大多数的环境中输出到显示器界面,printf函数就是将信息输出到标准输出 流中。
• stderr - 标准错误流,大多数环境中输出到显示器界面。
4.2文件指针
概念是“文件类型指针”,简称“文件指针”。 每个被使用的文件都在内存中开辟了⼀个相应的文件信息区,用来存放文件的相关信息(这些信息是保存在⼀个结构体变量中的。该结构体类型是由系统声明的,取名 FILE
定义pf是⼀个指向FILE类型数据的指针变量。可以使pf指向某个文件的文件信息区(是⼀个结构体变 量)。通过该文件信息区中的信息就能够访问该文件。也就是说,通过文件指针变量能够间接找到与 它关联的文件。(important)
4.3 文件的打开和关闭
文件在读写之前应该先打开文件,在使用结束之后应该关闭文件。 在编写程序的时候,在打开文件的同时,都会返回⼀个FILE*的指针变量指向该文件,也相当于建立了指针和文件的关系。
//打开⽂件
FILE * fopen ( const char * filename, const char * mode );
//关闭⽂件
int fclose ( FILE * stream );
mode表示文件的打开模式,下面都是文件的打开模式:
5. 文件的顺序读写
适用于所有输⼊流⼀般指适用于标准输入流和其他输入流(如文件输入流);所有输出流⼀ 般指适用于标准输出流和其他输出流(如文件输出流)。
好了,关于文件的知识博主目前跟大家分享到这里,我们下期再见,拜拜。