1、文件操作函数详解

C语言中没有输入输出语句,所有的输入输出功能,都用 ANSI C提供的一组标

准库函数来实现。文件操作标准库函数有:

(1)文件的打开:

fopen():打开文件

(2)文件的关闭:

fclose():关闭文件

(3)文件的读写:

fgetc():读取一个字符 fputc():写入一个字符 fgets():读取一个字符串 fputs():写

入一个字符串 fprintf():写入格式化数据 fscanf():格式化读取数据 fread():读取

数据 fwrite():写入数据

(4)文件状态检查:

feof():文件是否结束

ferror():文件读/写是否出错 clearerr():清除文件错误标志 ftell():文件指针的当前位置。

(5)文件指针定位:

rewind():把文件指针移到开始处 fseek():重定位文件指针


2、参数解释:

“r”:以只读的形式打开文本文件(不存在则出错)

“w”:以只写的形式打开文本文件(若不存在则新建,反之,则从文件起始位置

写,覆盖原内容)

“a”:以追加的形式打开文本文件(若不存在,则新建;反之,在原文件后追加)

“r+”:以读写的形式打开文本文件(读时,从头开始;写时,新数据只覆盖所占的

空间)

“wb”:以只写的形式打开二进制文件

“rb”:以只读的形式打开二进制文件

“ab”:以追加的形式打开一个二进制文件

“rb+”:以读写的形式打开二进制文件。

“w+”:首先建立一个新文件,进行写操作,然后从头开始读(若文件存在,原内

容将全部消失)

“a+”:功能与"a”相同。只是在文件尾部追加数据后,可以从头开始读

“wb+”:功能与"w+”相同。只是在读写时,可以由位置函数设置读和写的起始

位置

“ab+”:功能与"a+”相同。只是在文件尾部追加。据之后,可以由位置函数设置

开始读的起始位置

3、打开文件:(举例)

文件的读写--C语言_二进制文件

注意:文件是否打开成功

          关闭文件

          文件指针置空

4、关闭文件:函数原型int fclose(FILE*stream)

文件的读写--C语言_文件读取_02

5、读取字符:int fgetc(FILE*stream)

文件的读写--C语言_文件指针_03

写入字符:int fputc(int c,FILE*stream)

 

文件的读写--C语言_文件指针_04

6、读取字符串

文件的读写--C语言_文件读取_05


7、读取数据块

文件的读写--C语言_二进制文件_06

8、文件

文件指针重定位

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

·stream:流

·offset:相对应 origin 位置处的偏移量,单位为字节

·origin:指针的位置

#define SEEK CUR 1// 当前位置#define SEEK END 21/ 末尾#define SEEK SET 0 // 开头

获取指针位置

long int ftell ( FILE * stream );

·stream:流

文件指针移到开始处

void rewind( FILE *stream ):

.stream:流

清除文件错误标志

void clearerr( FILE *stream );

·stream: 流


文件流是否读到了文件尾

int feof( FILE *stream );

·stream:流

重命名文件

int rename ( const char * oldname, const char *

newname );

·oldname:原名

·newname:新名

删除文件

int remove ( const char * filename );

·filename:文件的路径