网站大量收购闲置独家精品文档,联系QQ:2885784924

第九章 文件5.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 文件5

李梅;本章主要内容 1. 了解什么是文件、文件指针及文件的存取方式 2. 掌握文件的打开和关闭操作 3. 掌握文件的读写处理函数及定位函数的使用 4. 能编制简单的顺序文件和随机文件;9.1 文件概述;1. 文件的逻辑结构;特点: 顺序文件:记录的逻辑顺序和物理顺序相同,记录可以不等长,读出某一条记录的速度慢,不能直接对文件进行修改,适宜于对文件顺序批量处理。 随机文件:每条记录等长,各数据项长度固定,每个记录有惟一的记录号。读写文件时,按记录号直接读写指定的记录,适宜于随机读写某条记录的操作。 (1)顺序存取只能依先后次序存取文件中的数据,存取完第一字节,才能存取第二字节;依此类推; (2)随机存取也称直接存取,可以直接存取文件中指定的数据,例如,可以直接存取指定的第i个字节(或字符),而不管第i-1字节是否已经存取。;;【例】将字符串Beijing,Shanghai,Tianjin,Chongqing写入文件ex.txt。 #include stdio.h FILE *fp; main() { char a[][11]={Beijing,Shanghai,Tianjin,Chongqing}; int i; if ((fp=fopen(“c:\\ex.txt,w))==NULL) { printf(Cannot open file\n); exit(1); } for (i=0;i=3;i++) fputs(a[i],fp); fclose(fp); } ; 在进行文件操作时,要用文件指针。 文件指针用来指向文件中当前操作的位置,当文件指针与某个文件连接之后,用户就通过文件指针而不是通过文件名来存取文件。 文件指针是一种FILE型的结构变量,C编译系统已在标题文件stdio.h中将FILE结构类型定义好,其中包括文件名、文件状态标志及缓冲区大小等信息。 定义文件指针的格式为: FILE *fp1,*fp2; 这样,fp1和fp2就成为文件指针,由fopen()函数可将它们指向指定的文件。;(1) 打开文件函数fopen() FILE *fp; fp=fopen(fname,mode); 其中,fname是要打开的文件名,文件名可以带路径;mode表示文件的使用方式,它规定了打开文件的目的。 文件正常打开后,fopen()函数的返回值是文件在内存中的起始地址,把该地址赋给文件指针fp就建立起文件指针fp和文件fname之间的连接,即fp指向文件fname。 此后对文件的操作就通过文件指针进行,而不再使用文件名。如果不能打开指定的文件,则返回NULL。;;为确保文件操作的正常进行,有必要在程序中检测文件是否正常打开,即操作是否成功。常用下面的程序段: if ((fp=fopen(fname,w))==NULL) { printf(Can not open file\n); exit(1); } 即文件不能正常打开时,屏幕提示“Can not open file.”,程序运行终止。 exit()函数的功能是终止程序运行,关闭文件并返回操作系统;若文件成功打开,程序就可以继续往下执行。; ① w方式,只能用于向文本文件写数据。若指定的文件不存在,则创建该文件;若指定的文件已存在,则先删除文件中的全部内容。 ② r方式,只能用于从文本文件中读数据。若指定的文件不存在,则出现错误信息。文件打开时,文件指针指向文件开头。 ③ a方式,用于向文件末尾添加数据。 ④ r+,w+,a+方式,用于既可读也可写的方式打开文本文件。 r+:用该方式打开文件后,若写入数据,则写入的内容只覆盖新数据需要的空间,其后的原有数据并不丢失。 w+:用该方式打开文件后,文件原有内容全部丢失,只能先向文件写入数据,然后再读出。 a+:用该方式打开文件后,将文件内容保留。读时从文件开头读,写时则追加到文件末尾。 ⑤ 上述6种方式加上字母“t”后仍表示对文本文件打开。 ⑥ 上述6种方式加上字母“b”后就表示对二进制文件打开。; 文件操作完毕,应用fclose()函数将文件关闭,格式为: fclose(fp); 文件关闭后,文件指针与文件名脱钩,文件指针可以再与别的文件连接。文件打开和关闭的程序示例如下:;9.3 文件的读写操作;9.3.1 文本文件读写函数;#include stdio.h #include stdlib.h FILE *fp; void main() { c

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档