- 数据文件的分类:包括ASCII文件和二进制文件。ASCII文件:又称为文本文件,每一个字节放一个字符的ASCII代码。二进制文件:数据在内存中是以二进制存储的,也称之为映像文件。
- 文件指针,FILE是一种结构体类型,它包含在stdio.h中,在程序中可以直接用它定义变量。一般随定义一个指向FILE类型变量的指针变量,然后通过他来引用这些FILE类型变量。
- FILE *fp 定义一个装FlLE类型的指针变量,可以是fp指向某一个文件信息区(是一个结构体变量),通过该文件信息区中的信息就能够访问该文件。也就是说通过文件指针变量能够找到与它关联的文件。为方便起见,我们通常将这种指向文件信息区的指针变量简称指向文件的指针变量。
- 注意:注意:注意:指向文件的指针变量并不是指向外部介质上的数据文件的开头,而是指向内存中的文件信息区的开头。
- 使用文件的方式:
- 主要由r,w,a,+,b,t六个字符组合而成。
r:
只读方式,文件必须存在
w:
只写方式,若文件存在,则原有内容会被清除;若文件不存在,则会建立文件
a:
追加方式打开只写文件,只允许进行写操作,若文件存在,则添加的内容放在文件末尾;若不存在,则建立文件
+:
可读可写 b:以二进制方式打开文件 t:以文本方式打开文件(默认方式下以文本方式打开文件) 下面是常见的组合: r: 以只读的方式打开文件,只允许读,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
r+:
以可读可写的方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
rb+:
以可读可写、二进制方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
rt+:
以可读可写、文本方式打开文件,允许读写,此文件必须存在,否则返回NULL,打开成功后返回文件指针,位置指针指向文件头部
w:
以只写的方式打开文件,只允许写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部
w+:
以读写的方式打开文件,允许读写,若文件存在,文件中原有内容会被清除;若文件不存在,则创建文件,打开成功后返回文件指针,位置指针指向文件头部
a:
以追加、只写的方式打开文件,只允许写。若文件存在,则追加的内容添加在文件末尾,若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部(注意很多书上或资料上讲述追加方式打开成功后位置指针指向文件末尾是错误的)
a+:
以追加、可读写的方式打开文件,允许读写。若进行读操作,则从头开始读;若进行写操作,则将内容添加在末尾。若文件不存在,则创建文件。打开成功后返回文件指针,位置指针指向文件头部。