第11章文件操作教材.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章 文件操作 张书源 11.1 文件的基本概念 11.2 流式文件 11.3 文件类型指针 11.4 文件操作 11.4.1 打开文件 11.4.2 关闭文件 11.4.3 文件的顺序读写 11.4.4 文件的随机读写 例:把文件a.dat中的数组读入程序中,并显示。 #include stdio.h #include stdlib.h int main() { FILE *fp; int a[5],i; if((fp=fopen(a.dat,rb))==NULL) { printf(Cant open file.\n); exit(1); } fread(a,sizeof(int),5,fp); for(i=0;i5;i++) printf(%d ,a[i]); fclose(fp); return 0; } 文件操作举例: 把文件a.dat复制为文件b.dat。 操作方法: 1、以读方式打开a.dat。(rb) 2、新建文件b.dat。(wb) 3、循环读a.dat,直到文件结束 把读出的数据写入b.dat。 4、关闭a.dat、b.dat。 #include stdio.h #include stdlib.h int main() { FILE *fp1,*fp2; char c; if((fp1=fopen(a.dat,rb))==NULL) { printf(Cant open a.dat.\n); exit(1); } if((fp2=fopen(b.dat,wb))==NULL) { printf(Cant open b.dat.\n); exit(1); } while( !feof(fp1) ) { fread(c,1,1,fp1); fwrite(c,1,1,fp2); } fclose(fp1); fclose(fp2); return 0; } 改进: 把文件1复制为文件2,文件1和文件2的文件名通过命令行输入。 命令行: int main(int argc,char *argv[]) argc为命令行中的单词数。 argv存放各个单词的指针。 设:输入命令为: fcopy a.dat b.dat 0 1 2 fcopy argv a.dat b.dat #include stdio.h #include stdlib.h int main(int argc,char *argv[]) { FILE *fp1,*fp2; char c; if((fp1=fopen(argv[1],rb))==NULL) { printf(Cant open %s.\n,argv[1]); exit(1); } if((fp2=fopen(argv[2],wb))==NULL) { printf(Cant open %s.\n,argv[2]); exit(1); } while( !feof(fp1) ) { fread(c,1,1,fp1); fwrite(c,1,1,fp2); } fclose(fp1); fclose(fp2); return 0; } 通过在程序中设置文件内部指针的位置可以读写文件任意位置的数据,这种读写方式称为随机读写。 * * 文件一般是指存储在外部介质上的数据集合。通常是指磁盘、磁带等存储介质上的信息。 与内存中的数据不同,文件可长期保存。文件通常有文件名,我们可通过文件名访问文件。 C语言中的文件是流式文件。 这种文件以字节为单位组织,也以字节为单位进行输入输出。 每一组对文件的操作称为一个流,流的性质决定了文件的性质和文件的操作。 文本文件: 文件中的数据以编码方式存放。如:字母和符号用ASCII码存放,汉字用GBK等编码存放。 在文本文件中,数字也是用A

文档评论(0)

阿里山的姑娘 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档