C语言程序设计第10章文件处理.ppt
《C语言程序设计第10章文件处理.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计第10章文件处理.ppt(32页珍藏版)》请在三一办公上搜索。
1、第10章 文 件 处 理,纵扛抬莫脑廉鸳钩列硅羚狱蚜贺淘佰虱磐操预砍雾删扮柔隅妆榷先烂婿奎C语言程序设计第10章文件处理C语言程序设计第10章文件处理,学习目标,1了解文件的基本概念;2理解文件的基本应用;3掌握利用文件管理函数进行文件的打开、读写及关闭等基本操作方法。,祁玛砰碉遣径拽疽夹驻筛晌趴溯吩刮嘘红逊癸脓鹅心逛搀苯粤浇俘捍诚丧C语言程序设计第10章文件处理C语言程序设计第10章文件处理,10.1 文件的基本概念,C对文件的处理方法,缓冲文件系统,非缓冲文件系统,拄赖性栓化米愁石雏墙明仆蔓瑞注挺阔养症砸伏伴溢该吉喘粤扭践务震彻C语言程序设计第10章文件处理C语言程序设计第10章文件处理,
2、例:整数10000,在内存中占两个字节,输出到磁盘上若以ASCII形式占5个字节:,00110001,00110000,00110011,00110000,00110000,若以二进制形式占2个字节:,00100111,00010000,C文件是一个字节流或二进制流。,郎洱租法拨匆造肉透捧再胆齐龋亥橇予救嵌咀预绸耿狄鸡瘁疾眷花莱蛋选C语言程序设计第10章文件处理C语言程序设计第10章文件处理,旧的C版本(如Unix系统下使用的C)有两种对文件的处理方法:一种叫“缓冲文件系统”,一种叫“非缓冲文件系统”。缓冲文件系统:系统自动为正在使用的文件在内存开辟缓冲区。非缓冲文件系统:由程序为文件设置缓冲
3、区。,麻僧链囱愈最偶言狮滩挣扁涝笛斜伶辅刻傀倡重忻竿箕跪钮萝仓往王池题C语言程序设计第10章文件处理C语言程序设计第10章文件处理,10.2 文件类型指针,通过文件指针就可对它所指的文件进行各种操作。说明文件指针的一般形式为:FILE*指针变量名;FILE*fp;,姆仕耘哆柏孤尺螟涵机善恢绊蜕罕泵荧饮酗仇梭斌库搂码生荤搏知俩舒匡C语言程序设计第10章文件处理C语言程序设计第10章文件处理,10.3 文件的基本操作,10.3.1 文件的打开 在打开一个文件时,通知给编译系统以下三个信息:需要打开的文件名,即准备访问的文件的名字;使用文件的方式(读还是写等);让哪一个指针变量指向被打开的文件。,企
4、慢杏瞪彼鸿酒犊竭姿浓箔茬走馈氟么家肝瑚蚀责眉握斋威析煌辛咋湃堡C语言程序设计第10章文件处理C语言程序设计第10章文件处理,打开文件操作由fopen函数来完成。fopen函数的一般调用形式为:文件指针名=fopen(“文件名”,“使用文件方式”);如:FILE*fp;fp=fopen(file1,r);,杭划齿绸捆欣兜设吧霞撼分责腆拼糠夫浅百没棒氢雏钾贪搏涉惜炽阜盏怀C语言程序设计第10章文件处理C语言程序设计第10章文件处理,俗都缮推窒荒刃蔓怒菲岛鞘逞淳糠倦桥耙小趾擂动缕仑构屉滨睬奏斧绞颁C语言程序设计第10章文件处理C语言程序设计第10章文件处理,说明:(1)在打开一个文件时,如果出错,f
5、open函数将返回一个空指针值NULL。常用下面的程序段打开文件:if(fp=fopen(file1,r)=NULL)printf(cannot open this file!n);exit(0);(2)把文本文件读入内存时,要将ASCII码转换成二进制码,而把文件以文本方式写入磁盘时,也要把二进制码转换成ASCII码。而对二进制文件的读写不存在这种转换。(3)运行一个C程序时,系统会自动打开三个文件:标准输入文件、标准输出文件、标准出错输出。通常情况下,stdin与终端键盘连接,stdout和stderr与终端屏幕连接。,迪洗铭兑扶滋瓷邹残超胖吾劫弄叙拯墒丙雀椿幢拳哉徽萄岔觉分酮音捆屠C语言
6、程序设计第10章文件处理C语言程序设计第10章文件处理,10.3.2 文件的关闭,fclose函数,一般调用形式是:fclose(文件指针);如:fclose(fp);其中fp是要关闭文件的文件指针。,帧燕溃踌漓奥众侮箭炕犀如禾感康谣粱拂腾滇粮勒宇痊僵侨适棚咯六兄莱C语言程序设计第10章文件处理C语言程序设计第10章文件处理,10.3.3 文件的读写,一、字符读写函数(fputc/fgetc或putc/getc)格式:fgetc(fp);fputc(ch,fp);#define putchar(c)fputc(c,stdout)#define getchar()fgetc(stdin),整脏琉
7、测砚延苔疑要都墒俊屠袍反芋训慎曾宋棒屈恰纯哈炽楷莆泅摘妓能C语言程序设计第10章文件处理C语言程序设计第10章文件处理,例:从键盘上输入一些字符,逐个将它们送到磁盘上去,直到输入一个“”为止。,#include stdio.hmain()FILE*fp;char ch,filename10;scanf(%s,filename);if(fp=fopen(filename,w)=NULL)printf(cannot open file n);exit(0);ch=getchar();,while(ch!=#)putc(ch,fp);putchar(ch);ch=getchar();fclose(f
8、p);,悬讼六镊泪荤移梨复坎幢娩十浸白吨菌钝价踊帽汇秧刹某荧部妮谬鸦妊责C语言程序设计第10章文件处理C语言程序设计第10章文件处理,#include stdio.hmain()FILE*in,*out;char ch,infile10,outfile10;printf(Enter the infile name:n);scanf(%s,infile);printf(Enter the outfile name:n);scanf(%s,outfile);if(in=fopen(infile,r)=NULL)printf(“cannot open infilen);exit(0);,例:将一个磁
9、盘文件中的信息复制到另一个磁盘文件中。,你况龟霖极跳娱茵寞渺甩磨裂悼馅墅荷樊龄珍渭喧蓉弯逮嗡鲍短房缅湿锈C语言程序设计第10章文件处理C语言程序设计第10章文件处理,if(out=fopen(outfile,w)=NULL)printf(cannot open outfilen);exit(0);while(!feof(in)putc(getc(in),out);fclose(in);fclose(out);,羚侍擎漓搁逼拐溜稳戈训债诲摘沟策毛捏曰得屈垢宠杠暂侄樱业幸否辖掐C语言程序设计第10章文件处理C语言程序设计第10章文件处理,#include stdio.hmain(argc,argv
10、)int argc;char*argv;FILE*in,*out;if(argc!=3)printf(You forgot to enter a filenamen);exit(0);,例:修改上例,使之在执行可执行文件时输入两个文件名。,堂援闭晕火夫轴惭木纲猴纤杭财澈腔拦配学橇吞栅妖涵逻酵贷万翘予醚竣C语言程序设计第10章文件处理C语言程序设计第10章文件处理,if(in=fopen(argv1,r)=NULL)printf(cannot open infilen);exit(0);if(out=fopen(argv2,w)=NULL)printf(cannot open outfilen)
11、;exit(0);while(!feof(in)fputc(fgetc(in),out);fclose(in);fclose(out);,瑚裸盗耸万译渔晒兵丈斋匪培的奉汛厨霄旁转尊头厨醉眼讨躯朝廷诽讣乎C语言程序设计第10章文件处理C语言程序设计第10章文件处理,二、字符串读/写函数,读字符串函数的一般调用形式为:fgets(字符数组名,n,文件指针);写字符串函数fputs的一般调用形式为:fputs(字符串,文件指针);,斑帖咒拖疹沥均矩撕普椿涩衍堆疽俞娠干涪荧佣如磨想守晰豌襄辟纯哦登C语言程序设计第10章文件处理C语言程序设计第10章文件处理,例:从c1.txt文件中读入一个含10个字符
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 10 文件 处理
链接地址:https://www.31ppt.com/p-5140625.html