C语言必会15个文件函数

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

功能:以指定格式打开文件

参数解析
filename文件名
mode以指定格式打开文件
返回值:FILE指针,打开失败返回NULL

mode的参数:

文件使用方法含义如果指定文件不存在
r只读以读模式打开已经存在文本文件
w只写以写模式打开文本文件,
a追加以写模式打开文件,向现有文本文件尾添加数据
rb只读为了输入数据,打开一个二进制文件
wb只写为了输出数据,打开一个二进制文件
ab追加向一个二进制文件尾添加数据
r+读写为了读和写,打开一个文本文件
w+读写为了读和写
a+读写打开一个文件,在文件尾进行读写

int fclose ( FILE * stream );

**功能:**关闭文件

返回值:如果流成功关闭,则返回零值。失败时,返回EOF(-1)。

int feof ( FILE * stream );

**功能:**检测文件指针是否到达文件末端

参数解析
stream文件指针
**返回值 :**检测文件指针到文件末端时,会返回非零值,未到文件末端时返回0

void exit (int status);

功能: 关闭所有打开的文件并结束程序

status解析
0或者 EXIT_SUCCESS表示程序结束正常
1或者EXIT_FAILURE表示结束程序失败

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

**功能:**重新定位文件指针的位置
**例如:**fseek(fp, 0L, SEEK_END); //定位在文件末尾(以文件末尾为基准偏移0个单位)文件起始点模式

参数解析
stream文件指针
offset偏移量
origin定位指针的位置

origin参数

origin偏移量的起始点
SEEK_SET文件开始处
SEEK_CUR当前位置
SEEK_END文件末尾

**返回值:如果成功,该函数返回零。否则,它返回非零值。如果发生读取或写入错误,则会设置错误指示符( ferror )。

由于这些函数较为简单这里做了一个表格

功能函数原型作用返回值
字符输入函数int fgetc( FILE * stream)返回文件指针所指向的字符,然后文件指针向后偏移成功时,返回读取的字符(提升为int值)。
字符输出函数int fputc ( int character, FILE * stream );将这个字符写入到文件指针所指向的位置,然后文件指针向后偏移成功时,返回写入的字符。如果发生写入错误,则返回EOF并设置错误指示符(ferror)。
文本行输入函数char * fgets ( char * str, int num, FILE * stream );从文件指针开始向str字符串中拷贝num个字符,并返回这段字符。(如遇到文件尾则立刻停止)成功时,该函数返回str。
文本行输出函数int fputs ( const char * str, FILE * stream );向文件中写入一个str字符串成功写入文件指针向后偏移写入失败返回EOF 成功时,返回一个非负值。出错时,该函数返回EOF并设置错误指示符( ferror )。
格式化输入函数int fscanf(FILE *stream, const char *format, …)从文件指针开始按照指定格式给变量赋值,然后文件指针向后偏移成功时,该函数返回成功填充的参数列表的项目数。
格式化输出函数int fprintf(FILE *stream, const char *format, …)向文件中写入指定格式的数据成功时,返回写入的字符总数

size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );

功能: 二进制输入
从流中 读取count 个元素的数组,每个元素的大小为size字节,并将它们存储在ptr指定的内存块中。 流的位置指示器提前读取的总字节数。 如果成功,读取的总字节数为(size*count)。

参数解析
ptr这是指向带有最小尺寸 size*count字节的内存块的指针。
size这是要读取的每个元素的大小,以字节为单位。
count这是元素的个数,每个元素的大小为 size 字节。
stream文件指针。
**返回值:**返回成功读取的元素总数。

size_t fwrite ( const void * ptr, size_t size, size_t count, FILE * stream );

功能: 二进制输出
从流中 读取count 个元素的数组,每个元素的大小为size字节,并将它们存储在ptr指定的内存块中。 流的位置指示器提前读取的总字节数。 如果成功,读取的总字节数为(size*count)。

参数解析
ptr这是指向带有最小尺寸 size*count字节的内存块的指针。
size这是要读取的每个元素的大小,以字节为单位。
count这是元素的个数,每个元素的大小为 size 字节。
stream文件指针。
**返回值:**返回成功写入的元素总数。

void rewind ( FILE * stream );

**功能:**文件指针回到文件开始处

long int ftell ( FILE * stream );

功能: 获得文件指针当前位置相对于文件首的字节数
返回值: 该函数返回位置标识符的当前值。如果发生错误,则返回 -1L,全局变量 errno 被设置为一个正值。

  • 8
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
C语言文件操作及函数大全 2.文件操作函数: (1)文件打开函数fopen fopen函数用来打开一个文件,其调用的一般形式为: 文件指针名=fopen("文件名","使用文件方式"); 其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是被打开文件文件名。 “使用文件方式”是指文件的类型和操作要求。“文件名”是字符串常量或字符串数组。例如: FILE *fp; fp=fopen("file b","r"); 其意义是在当前目录下打开文件file b, 只允许进行“读”操作,并使fp指向该文件。 又如: FILE *fp fp=("c:\\file_a',"rb") 其意义是打开C驱动器磁盘的根目录下的文件file_a, 这是一个二进制文件,只允许按二进制方式进行读操作。两个反斜线“\\ ”中的第一个表示转义字符,第二个表示根目录。"\\"对于打开磁盘下的文件,要注意两个双斜线的正确应用,在表示绝对路径时,每一级目录都要用"\\", 例如:fp=fopen("d:\\study\\file_b","r+"); ####使用文件的方式共有12种,下面给出了它们的符号和意义。 文件使用方式 意 义 “rt” 只读打开一个文本文件,只允许读数据 “wt” 只写打开或建立一个文本文件,只允许写数据 “at” 追加打开一个文本文件,并在文件末尾写数据 “rb” 只读打开一个二进制文件,只允许读数据 “wb” 只写打开或建立一个二进制文件,只允许写数据 “ab” 追加打开一个二进制文件,并在文件末尾写数据 “rt+” 读写打开一个文本文件,允许读和写 “wt+” 读写打开或建立一个文本文件,允许读写 “at+” 读写打开一个文本文件,允许读,或在文件末追加数据 “rb+” 读写打开一个二进制文件,允许读和写 “wb+” 读写打开或建立一个二进制文件,允许读和写 “ab+” 读写打开一个二进制文件,允许读,或在文件末追加数据 对于文件使用方式有以下几点说明:
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林夕07

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值