C/C++文件操作之FILE

来源:互联网 发布:启信宝 数据库 编辑:程序博客网 时间:2024/05/17 16:12

本文章主要介绍在C/C++中的文件操作,方便自己忘记的时候可以查阅及供他人借鉴,有不足之处望大家指出。

一、FILE的主要函数集

   1、FILE* fopen(const char* filename,const char* mode);

          功能:用以打开一个文件

          参数:filename 表示打开的文件名,是包含完全路径的文件名

                      mode 表示文件的打开方式

          返回值:一个关联文件的指针

          mode 可以的取的模式如下:

          "r" 以读的方式打开文件

          "w"以写的方式打开文件,若文件存在则将文件中数据删除重新写入数据

          "a"以写的方式打开文件,如果文件存在,则在文件数据末尾写入新的数据

          "r+"以读写的方式打开文件

          "w+"以读写的方式打开文件,若文件存在则将文件中数据删除重新写入数据

          "a+"以读和插入的方式打开文件,如果文件存在,则在文件数据末尾插入新的数据

          "t"以文本的模式打开文件

          "b"以二进制的形式打开文件

          "c“激活关联文件名的提交标记,当调用fflush和_flushall函数调用时,文件缓冲区的数据写入磁盘

          "n"重新设置提交标记的为未提交标记

    2、int fclose(FILE* stream);

          功能:关闭打开的文件

          参数:stream 表示用fopen函数打开文件返回的文件指针

          返回值:关闭成功返回0,失败返回-1

    3、size_t fread(void* buffer,size_t size,size_t count,FILE* stream);

         功能:读取文件中的数据

         参数:buffer  存储数据的缓冲区

              size  读取数据单位的大小

              count 读取的单位数量,即读取size的数量

              stream 表示用fopen函数打开文件的返回文件指针

         返回值:实际读取的单位数量

    4、char* fgets(char* string,int n,FILE* stream);

         功能:从文件中读取一个字符串

         参数:string 存储读出的字符串

              n 读出的字符的最大个数

              stream 表示用fopen函数打开文件的返回文件指针

         返回值:指向string的指针,若错误或到达文件末尾则返回EOF

    5、size_t fwrite(const void* buffer, size_t size,size_t count,FILE* stream);

         功能:向文件中写入数据

         参数:buffer 准备写入数据的缓冲区

              size 写入数据的单位大小

              count 写入单位数据size的最大数量

              stream 表示用fopen函数打开文件的返回文件指针

         返回值:实际写入的单位数量

    6、int  fputs(const char* string,FILE* stream);

         功能:向文件写入字符串

         参数:string 要写入的字符串

              stream 表示用fopen函数打开文件的返回文件指针

         返回值:成功返回0,失败返回-1

    7、int feof(FILE* stream);

         功能:判断文件是否达到文件末尾

         参数:stream 表示用fopen函数打开文件的返回文件指针

         返回值:若文件指针到达文件末尾返回非0值,否则返回0

    8、int fseek(FILE* stream,long offset,int origin);

         功能:将文件指针设置到指定的位置

         参数:stream 表示用fopen函数打开文件的返回文件指针

              offset 相对于origin位置的偏移量

              origin 初始位置,可以取值为SEEK_CUR表示当前位置,SEEK_END表示文件尾,SEEK_SET表示文件开始位置

原创粉丝点击