- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课件第9章 文件
本章学习内容 文件的概念 文件类型指针 文件的打开/关闭 文件的读/写 文件的定位 文件的出错检测 本章学习目标 掌握文件的概念 掌握文件类型指针 掌握文件打开/关闭的方法 掌握文件读/写的一般方法 了解文件定位 了解文件出错检测方法 1. 文件概述 文件的概念 存储在外部介质上数据的集合 是操作系统对数据进行管理的单位 使用数据文件的目的 数据文件的改动不引起程序的改动——程序与数据分离 不同程序可以访问同一数据文件中的数据——数据共享 能长期保存程序运行的中间数据或结果数据 文件的分类 文件的处理方法 2. 文件类型指针 文件结构体类型FILE 文件类型指针 3. 文件的操作 打开/关闭 读/写 定位 状态检测 本章小结 文件的概念 文件类型指针 文件打开/关闭 文件读/写 文件定位 出错检测 本章课后任务 阅读本章内容,掌握文件的基本操作 思考课后习题 结合本章配套练习,加深对基础知识的理解和掌握 本章学习重点 #include stdio.h #include stdlib.h void main() { FILE *fp; char ch; if((fp = fopen(a.txt,w))==NULL) { printf(cannot open file\n); exit(0); } 例1-1 fp = fopen(a.txt,w); if(fp ==NULL) printf(Please input string:); ch = getchar(); while(ch!=#) { fputc(ch,fp); ch = getchar(); } fclose(fp); } return 使用数据文件的目的 1、数据文件的改动不引起程序的改动——程序与数据分离 2、不同程序可以访问同一数据文件中的数据——数据共享 3、能长期保存程序运行的中间数据或结果数据 一个C文件是一个字节流或二进制流 本章介绍ANSI C规定的缓冲文件系统 每个被使用的文件都在内存中开辟一个区,用来存放文件的相关信息(如文件名、文件状态、文件当前位置等) 这些信息被保存在一个结构体变量中 该结构体类型由系统定义,为FILE (1)缓冲文件系统为每个正使用的文件在内存开辟文件信息区 (2)文件信息用系统定义的名为FILE的结构体描述 (3)FILE定义在stdio.h中 用法: (1)文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件 (2)文件关闭后,它的文件结构体被释放 (1)fopen函数 函数原型: FILE *fopen(char *name,char *mode) 功能:按指定方式打开文件 返值:正常打开,为指向文件结构体的指针;打开失败,为NULL (2)fclose函数 函数原型:int fclose(FILE *fp) 功能:关闭fp指向的文件 返值:正常关闭为0;出错时,非0 作用:使文件指针变量与文件“脱钩”,释放文件结构体和文件指针 (不关闭文件可能会丢失数据,因为fclose先把缓冲区数据输出到磁盘文件,然后才释放文件指针) exit()是标准C的库函数,功能:终止程序。该函数声明被包含在头文件stdlib.h中 EOF: 文本文件结束符 与EOF相关的函数有feof()(P335) 1.若文件在当前目录下: fp=fopen(aa.txt,r); 2.若文件不在当前目录下: fp=fopen(d:\\fengyi\\bkc\\aa.txt,r); 2.若从键盘输入带路径文件名: char infile[30]; scanf(%s,infile); fp=fopen(infile,r); 必须输入:d:\fengyi\bkc\aa.txt 顺序读写:位置指针按字节位置顺序移动,叫~ 随机读写:位置指针按需要移动到任意位置,叫~ C语言程序设计 第*页 * 第9章 文件 文件的操作 问题 : 输入时能不能不从键盘输入而是从文件输入? 输出时能不能不输出到显示器而是输出到文件? 本章主要学习目标 next part go go 文件的分类 按文件的逻辑结构分 记录文件:由具有一定结构的记录组成(定长和不定长) 流式文件:由一个个字符(字节)数据顺序组成 按存储介质分 普通文件: 存储介质文件(磁盘、磁带等) 设备文件: 非存储介质(键盘、显示器、打印机等) 按数据的组织形式分 文本文件: 每个字节存放一个字符的ASCII码(ASCII文件) 二进制文件: 数据按其在内存中的存储形式原样存放 sk
文档评论(0)