文件输入输出(二):文件的操作

2018-06-18 03:57:57来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

  FILE *fopen(char * filename,char * mode)

  filename对应的实参是一个字符串,表示需要打开的文件的文件名(可以包括文件的路径),该实参可以是一个字符串常量,也可以是一个字符指针;

  mode对应的实参也是一个字符串,对应了文件的操作模式:

  “r”:以只读方式打开一个文本文件,如果文件不存在则打开失败。打开后,从头开始读。

  “w”:以只写方式打开或建立一个文本文件,如果文件存在则丢弃所有内容。

  “a”:以添加方式打开一个文本文件,在尾部接着写入数据,若文件不存在则穿件新文件。

  “rb”:打开一个只读的二进制文件,如果文件不存在 则打开失败。

  “wb”:打开或建立一个只写的二进制文件,如果文件存在则丢弃所有内容。

  “ab”:以添加方式打开一个二进制文件。

  “r+”:打开一个可读/可写的文本文件,可以对文件读或写,文件不存在则操作失败。

  “w+”:创建一个新的可读/可写的文本文件,在打开时文件中的内容为空。

  “a+”:打开一个可读/写的文本文件。

  “rb+”:打开一个可读/写的二进制文件。

  "wb+":创建一个新的可读/写的二进制文件。

  "ab+":打开一个可读/写的二进制文件。

  打开文件:FILE *fp;

  if(fp=fopen("c:\\tc\\test.txt","r")==NULL)

  {

    printf("Cannot open this file\n");

    exit(0);

  }

  关闭文件:int fclose(FILE *stream)

  文件的结束:int feof(FILE* stream)

  FILE *fp;

  while(!feof(fp))

  {

    操作文件;

  }

  字符输入输出函数:int fputc(int ch,FILE *stream):返回 一个向文件所写字符的值,此时写操作成功,否则返回EOF(文件结束符,值为-1,在stdio.h中定义)表示写操作错误。

           int fgetc(FILE * stream):返回文件当前位置的一个字符的ASCII值,在读操作遇到文件结束时,函数返回一个文件结束标志。

  行输入输出函数:char fgets(char *string,int n,FILE *stream):string的实参是指向一个字符数组的指针,fgets函数从文件中读取至多n-1个字符(n用来指定需要读出的字符数),stream为指向某个文件的文件指针。当读入遇到换行符,将包括换行符在内的字符串放入指定的字符数组中;当读入n-1个字符后没有遇到换行符,则将这些字符放入字符数组中。无论操作如何完成,函数都在数组中存放的字符后加一个空字符‘\0’,表示一个字符串结束。正常读入成功时,函数返回string指针,遇到文件结束或操作出错时返回一个空指针。

           int fputs(char *string,FIle *stream):将string所指向的字符串写入到文件指针stream所指向的文件中。当string指针所指的字符串成功写入时,函数返回非0值;写操作失败时,函数返回EOF。

  格式化输入输出函数:int fprintf(FILE *stream,char *format,<variable-list>):返回值为实际写入文件的中的字符个数(字节数)。如果写错误则返回一个负数。格式化的规定与printf话术相同。

            int fscanf(FILE *stream,char *format,<variable-list>):读取错误返回EOF,否则成功。

摘自:王芳《C语言程序设计》

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:求原码、补码,反码(C语言源代码)

下一篇:scanf语句用法记录