C语言函数fread,fwrite
操作方法
- 01
---------------------------------------------------------------------------------fread ------------------------------------------------- 思路 定义三个主要变量,文件指针FILE *stream;数组(获取数据的地址);数组(接收数据的地址) → fopen(文件,打开方式); 可用if判断显示错误信息 if((stream=fopen("abc.txt","w+"))==NULL) stream指向文件abc.txt用于fwrite、fseek、fread NULL如果文件打开失败返回NULL → fwrite(获取数据的地址,写入多少字节的内容,数据项个数,文件指针); → fseek(文件指针,偏移量,从哪里开始偏移) → fread(接收数据的地址,读取多少字节的内容,数据项个数,文件指针) ------------------------------------------------- #include<stdio.h> #include<string.h> #include <process.h> int main(void) { FILE *stream; char msg[]="thisisatest"; char buf[20]; if((stream=fopen("abc.txt","w+"))==NULL) { fprintf(stderr,"Cannotopenoutputfile."); return 0; } fwrite(msg,strlen(msg)+1,1,stream); fseek(stream,0,SEEK_SET); fread(buf,strlen(msg)+1,1,stream); printf("%s",buf); fclose(stream); system("abc.txt"); return 0; } ------------------------------------------------- if((stream=fopen("abc.txt","w+"))==NULL) == stream=fopen("abc.txt","w+") if(stream==NULL) { } --------------------------------------------------------------------------------fwrite ------------------------------------------------- 思路 定义三个主要变量,文件指针FILE *stream;数组(获取数据的地址);数组(接收数据的地址) → fopen(文件,打开方式); → fwrite(获取数据的地址,写入多少字节的内容,数据项个数,文件指针); ------------------------------------------------- #include <process.h> #include <stdio.h> int main () { FILE * pFile; char buffer[] = { 'x' , 'y' , 'z' }; pFile = fopen ( "abc.txt" , "wb" ); fwrite (buffer , sizeof(buffer), 1 , pFile ); fclose (pFile); system("abc.txt"); return 0; }