linux-C语言文件操作函数大全

转载:http://www.jb51.net/article/37688.htm

包含头文件:includ <stdio.h>

1、fopen

功能:打开文件

定义:FILE * fopen(const char * path,const char *mode);

说明:参数path字符串代表欲打开的文件路径和文件名,参数mode字符串代表流形式。

实例:

#include "stdio.h"

main()

{

FILE *fp;

    fp = fopen("/home/file","r+");

        if(fp == NULL) return;

fclose(fp); 

}

2、fpintf

功能:传送格式化输出到一个文件中

定义:int fprintf(FILE *stream,char *format,[argument...])

实例:

fp = fopen("/local/test.txt","a+");

fprintf(fp,"%s\n",str);

3、fscanf

功能:从一个流中执行格式化输入

定义:int fscanf(FILE *stream,char *format,[argument...])

实例:

fp =  fopen("/loacl/test.c","a+");

fscanf(fp,"%s\n",str);

4、fclose

功能:关闭文件

定义:int fclose(FILE *stream)

说明:fclose()用来关闭先前fopen()打开的文件,此动作会让缓冲区内的数据写入文件中,并释放系统所提供的文件资源。

5、feof

功能:检查文件流是否读到文件尾

定义:int feof(FILE *stream)

说明:用来侦测是否读取到了文件尾,如果已经到达文件尾则返回非零值,其他情况返回0。

6、fflush

功能:更新缓冲区,程序出错强制写入文件

定义: int fflush(FILE* stream)

说明: fflush()会强迫将缓冲区内的数据写回参数stream指定的文件中。如果参数stream为NULL,fflush()会将所有打开的文件数据更新。

7、fgetc

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

定义:int fgetc(FILE * stream);

说明: fgetc()从参数stream所指的文件中读取一个字符。若读到文件尾而无数据时便返回EOF。

实例:

#include<stdio.h>
main()
{
FILE *fp;
int c;
fp=fopen(“exist”,”r”);
while((c=fgetc(fp))!=EOF)
printf(“%c”,c);
fclose(fp);
}

8、fgets

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

定义:char * fgets(char * s,int size,FILE * stream);

说明: fgets()用来从参数stream所指的文件内读入字符并存到参数s所指的内存空间,直到出现换行字符、读到文件尾或是已读了size-1个字符为止,最后会加上NULL作为字符串结束。返回值 gets()若成功则返回s指针,返回NULL则表示有错误发生。

实例:

#include<stdio.h>
main()
{
char s[80];
fputs(fgets(s,80,stdin),stdout);
}
执行 this is a test /*输入*/
this is a test /*输出*/

9、fseek

功能:移动文件流的读写位置

定义: int fseek(FILE * stream,long offset,int whence);

说明: fseek()用来移动文件流的读写位置。参数stream为已打开的文件指针,参数offset为根据参数whence来移动读写位置的位移数。

下列是较特别的使用方式:
1) 欲将读写位置移动到文件开头时:fseek(FILE *stream,0,SEEK_SET);
2) 欲将读写位置移动到文件尾时:fseek(FILE *stream,0,0SEEK_END);

10fread

功能:读取文件

定义:size_t fread(void *buffer,size_t size,size_t count,FILE *stream);

说明:fread是一个函数。从一个文件流stream中读数据,最多读取count个项,每个项size个字节,存放数据的内存地址buffer,如果调用成功返回实际读取到的项个数(小于或等于count),如果不成功或读到文件末尾返回 0。

11fwrite

功能:写入文件

定义:int fwrite(const void *ptr,int size,int nmemb,FILE *stream);

说明: fwrite()用来将数据写入文件流中。参数stream为已打开的文件指针,参数ptr 指向欲写入的数据地址,总共写入的字符数以参数size*nmemb来决定。

Fwrite()会返回实际写入的nmemb数目。











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值