c语言cpb文件,C语言文件函数-James Bryant-电子技术应用-AET-中国科技核心期刊-最丰富的电子设计资源平台...

FILE *fp:

其中的FILE应该大写,它实际上是系统定义的一个结构,在stdio.h文件中。该结构中有文件名,文件状态,文件当前的读写信息等。

fp是指向FILE结构的指针变量,通过fp可以找到某个文件的信息结构体,然后找到该文件,对文件实施操作。

FILE *fp=fopen("文件路径及名称","打开方式"),该函数执行失败返回NULL

打开方式:r:打开一个文本文件只读,前提是文件必须存在

w:打开一个文本文件只写,若文件不存在则创建该文件

a:对一个文本文件添加

rb:打开一个二进制文件只读,前提是文件必须存在

wb:打开一个二进制文件只写,若文件不存在则创建该文件

ab:对一个二进制文件添加

r+:打开一个文本文件读/写

w+:生成一个文本文件读/写

a+:打开一个文本文件读/写

rb+:打开二进制文件读/写

wb+:生成二进制文件读/写

ab+:打开二进制文件读/写

char ch=fgetc(fp):

从文件中读取一个字符,如果到达文件末尾或者发生错误则返回EOF

fputc(ch,fp);

将字符ch写入文件中,函数执行失败返回EOF

fgets(char buffer,int size,FILE *fp)

从文件中读取一串字符到数组buffer中。当遇到换行符时把换行符保留在数组中,读入不再进行,数组以'\0'结尾

fputs(char buffer,FILE *fp);

将字符串写入文件中,函数的返回值是实际写入文件的字符个数,失败返回EOF

#include

void rewind(FILE *fp);把文件流写入位置移至文件开头

#include

int fseek(FILE *fp,long offset,int whence);

函数功能:把fp的文件读写位置指针移到指定的位置.

SEEK_SET:以距离文件开头offset的位置为新的读写位置

SEEK_CUR:以目前的读写位置往后增加offset个位移量

SEEK_END:将读写位置指向文件尾后再增加offset个位移量

函数执行成功返回0,失败返回-1;

#include

long ftell(FILE *fp);用来取得文件流目前的读写位置其返回值是当前读写位置偏离文件头部的字节数.(默认包含'\0')

#include

int main()

{

FILE *fp;

char filename[80];

long length;

printf("Input the file name:");

gets(filename);

fp=fopen(filename,"rb");

if(fp==NULL)

printf("file not found!/n");

else

{

fseek(fp,0,SEEK_END);

length=ftell(fp);

printf("the file length %1d bytes\n",length);

fclose(fp);

}

return 0;

}

fread(buffer,size,count,fp);

fwrite(buffer,size,count,fp);

(1)buffer:是一个指针,对fread来说,它是读入数据的存放地址。对fwrite来说,是要输出数据的地址。

(2)size:要读写的字节数;

(3)count:要进行读写多少个size字节的数据项;

(4)fp:文件型指针。

#include

int main()

{

FILE* pFile;

float buffer[] = { 2.0 , 3.0 , 8.0 };

pFile =fopen("myfile.bin" ,"wb");// 打开文件写操作

fwrite(buffer , 1 ,sizeof(buffer) , pFile);// 把浮点数组写到文件 myfile.bin

fclose(pFile);// 关闭文件

float read[3];

pFile =fopen("myfile.bin" ,"rb");// 重新打开文件读操作

fread(read , 1 ,sizeof(read) , pFile);// 从文件中读数据

printf("%f\t%f\t%f\n", read[0], read[1], read[2]);

fclose(pFile);// 关闭文件

return 0;

}

include

int fflush(FILE *fp);

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

返回值:成功返回0, 失败返回EOF, 错误代码存于errno 中.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值