资源描述:
《vc文件读写函数.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VC文件读写函数1.文件的打开函数FILE*fopen(constchar*filename,constchar*mode);FILE*_wfopen(constwchar_t*filename,constwchar_t*mode);参数:filename文件的名称mode打开文件的模式返回值:成功的打开文件的话返回文件的指针否则返回NULL表示打开文件错误注:"r"只读方式打开"w"以写入方式打开"a"从文件的尾端写入数据,要是文件不存在则创建后写入数据"r+"以读写方式打开(文件必须存在)"w+"打开一个可以读写的文件,如果该文件存在则覆盖写入"a+"打开文件并追加写入源
2、于实例:#includeFILE*stream,*stream2;voidmain(void){ intnumclosed; /*Openforread(willfailiffile"data"doesnotexist)*/ if((stream=fopen("data","r"))==NULL) printf("Thefile'data'wasnotopened"); else printf("Thefile'data'wasopened"); /*Openforwrite*/ if((stream2=
3、fopen("data2","w+"))==NULL) printf("Thefile'data2'wasnotopened"); else printf("Thefile'data2'wasopened"); /*Closestream*/ if(fclose(stream)) printf("Thefile'data'wasnotclosed"); /*Allotherfilesareclosed:*/ numclosed=_fcloseall(); printf("Numberoffilesclosedby_fclosea
4、ll:%u",numclosed);}输出:Thefile'data'wasopenedThefile'data2'wasopenedNumberoffilesclosedby_fcloseall:12.当前文件指针位置获取函数longftell(FILE*stream);参数:stream文件指针返回值:当前文件指针的位置实例:#includeFILE*stream;voidmain(void){ longposition; charlist[100]; if((stream=fopen("ftell.c","rb"))!=NULL) {
5、 /*Movethepointerbyreadingdata:*/ fread(list,sizeof(char),100,stream); /*Getpositionafterread:*/ position=ftell(stream); printf("Positionaftertryingtoread100bytes:%ld", position); fclose(stream); }}输出:Positionaftertryingtoread100bytes:1003.文件读取函数size_tfre
6、ad(void*buffer,size_tsize,size_tcount,FILE*stream)参数:buffer文件读取缓冲区size读取数据的类型count读取数据的个数stream文件指针返回值:实际读取的数据个数源于例子:FILE*fp;char*buffer=newchar[1024];longrealLength=fread(buffer,sizeof(char),1024,fp);////处理过程//deletebuffer;fclose(fp);4.文件的写入函数size_tfwrite(constvoid*buffer,size_tsi
7、ze,size_tcount,FILE*stream);参数:buffer所要写入文件的缓冲区size写入数据的类型count写入数据的个数stream文件指针返回值:实际写入的数据个数源于实例:#includevoidmain(void){ FILE*stream; charlist[30]; inti,numread,numwritten; /*Openfileintextmode:*/ if((stream=fopen("fread.out","w+t