C语言-文件操作
2019-03-17 本文已影响0人
大鱼鱼
C语言文件
- C语言文件有两种类型:文本文件(也称ASCII码文件)和二进制文件。其差别在于存储数值型数据的方式不同。在二进制文件中,数值型数据是以二进制方式存储的;而在文本文件中,则是将数据型数据的每一位数字作为一个字符以其ASCII码的形式存储的。因此,文本文件中的每一位数字单独占用一个字节的存储空间。而二进制文件则是把整个数字作为一个二进制数来存储的,并非数值的每一位数字都占用单独的存储空间。
- C语言文件把数据看成是由字节构成的序列,即字节流。对文件的存取也是以字节为单位的,输入、输出的数据流仅受程序控制而不受物理符号的控制。所以C语言又称为流式文件。
- 文件打开方式:
"r":以只读方式,打开文本文件。以“r”方式打开的文件,只能读出,而不能向该文件写入数据。该文件必须是已经存在的,若文件不存在,则会出错。
"w":以只写方式,创建并打开文本文件,已存在的文件将被覆盖。以此方式打开文件时,无论文件是否存在,都需要创建一个新的文本文件,只能写入数据。
"a":以只写方式,打开文本文件,位置指针移到文件末尾,向文件尾部添加数据,原文件数据保留。若文件不存在,则会出错。
"+":与上面的字符串组合,表示以读写方式打开文本文件。既可以向文件中写入数据,也可以从文件中读出数据。
"b":与上面的字符串组合,表示打开二进制文件。 - fclose()用来关闭一个由fopen()打开的文件
fclose()返回一个整型数。当文件关闭成功时,返回0值,否则返回一个非0值。 - 读写文件中的字符
int fgetc(FILE *fp);
其中fp是由函数fopen()返回的文件指针,该函数的功能是从fp所指的文件中读取一个字符,并将位置指针指向下一个字符。若读取成功,则返回该字符,若读到文件末尾,则返回EOF。 - int fputc(int c,FILE*fp);
功能是:用于将一个字符写到一个文件上。其中,fp是由函数fopen()返回的文件指针,c是要输出的字符。该函数的功能是将字符c写到文件指针fp所指的文件中,若写入错误,则返回EOF,否则返回字符c。