C语言-文件操作

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。

你可能感兴趣的:(C语言-文件操作)