已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章文件,1,PPT学习交流,本章内容,10.1文件的基本知识10.2打开与关闭文件10.3顺序读写数据文件10.4随机读写数据文件10.5文件读写的出错检测,2,PPT学习交流,文件的基本知识输入输出,之前各章中处理的数据输入:键盘-内存输出:内存-显示器实际上也可能是输入:外部设备-内存(读文件)输出:内存-外部设备(写文件)操作系统把各种设备都统一作为文件处理,3,PPT学习交流,文件的基本知识文件分类,文件:存放在存储介质(磁盘、光盘、半导体存储器)上的相关信息集合程序设计中主要用到两种文件:程序文件数据文件本章讨论的是数据文件,4,PPT学习交流,文件的基本知识文件标识,文件有唯一的文件标识,以便识别和引用文件标识包括三部分:文件路径:文件保存的位置文件名主干:命名应体现文件的内容文件后缀:体现文件的格式,参见“常用文件扩展名”,5,PPT学习交流,文件的基本知识流式文件,语言把文件看作是字符(或字节)的序列。文件以“流”的形式在程序与操作系统间流动。,6,PPT学习交流,文件的基本知识数据的形式,根据数据的组织形式,数据文件可分为ASCII文件:数据逐个字符的ASCII码输出到外存,也称文本文件二进制文件:内存中二进制形式的数据直接输出到外存,7,PPT学习交流,文件的基本知识数据的形式,字符:一律以ASCII形式存储数值:既可用ASCII形式存储,也可以用二进制形式存储。例:(10000)10,1,0,0,0,0,ASCII形式,二进制形式,10000,8,PPT学习交流,文件的基本知识文件缓冲区,从内存向外存输出数据,程序数据区,输出文件缓冲区,输入文件缓冲区,磁盘,装满缓冲区,9,PPT学习交流,文件的基本知识文件缓冲区,程序数据区,输出文件缓冲区,输入文件缓冲区,磁盘,从外存向内存读入数据,充满缓冲区,10,PPT学习交流,文件的基本知识文件指针,被使用的文件在内存中开辟一个相应的文件信息区,存放文件的信息(如文件名、状态及当前位置等)这些信息保存在一个结构体变量中。该结构体类型由系统声明,名为FILE声明FILE结构体类型的信息包含在头文件“stdio.h”中一般设置一个指向FILE类型变量的指针变量,通过它引用FILE类型变量,11,PPT学习交流,文件的基本知识文件指针,FILE*fp1,*fp2,*fp3;,文件f1的文件信息区,fp1,文件f2的文件信息区,fp2,文件f3的文件信息区,fp3,12,PPT学习交流,文件的基本知识文件的操作,写文件:打开-写-关闭读文件:打开-读-关闭,13,PPT学习交流,文件的打开,功能:为文件建立相应的信息区(存放文件信息)和文件缓冲区(暂时存放输入输出的数据)函数:fopen(文件名,使用文件方式);例:fopen(a1.dat,r);,14,PPT学习交流,文件的打开,打开文件时,通常指定一个指针变量指向该文件,通过该指针变量对文件进行读写。例:FILE*fp;fp=fopen(a1.dat,r);三个要点:文件名;读写方式;指针,15,PPT学习交流,文件的打开打开文件的方式,P.336-337表10.1r:读w:写(重写,覆盖原数据)a:写(追加)b:二进制文件若文件不存在:读和追加:出错(P.336例,排错)重写:建立新文件,16,PPT学习交流,文件的关闭,功能:撤销文件信息区和文件缓冲区函数:fclose(文件指针);例:fclose(fp);读写文件后不关闭,可能会丢失数据。,17,PPT学习交流,文件的读写方式,顺序读写:读写顺序与数据的物理顺序一致(P.338)随机读写:可以对文件中指定位置的数据进行读写(P.349),18,PPT学习交流,顺序文件的读写读写字符,19,PPT学习交流,顺序文件的读写读写字符,例10.1连续读入一串字符并写入文件例10.2将一个文件内容复制到另一文件考虑:如何实现文件的合并?,20,PPT学习交流,顺序文件的读写读写字符串,21,PPT学习交流,顺序文件的读写读写字符串,例10.3从键盘输入3个字符串,排序,把排序后的字符串写入文件(P.342-343)读上面写好的文件(P.344),22,PPT学习交流,顺序文件的读写格式化读写,fprintf(文件指针,格式字符串,输出表列);fscanf(文件指针,格式字符串,输入表列);例:fprintf(fp,%d,%6.2f,i,f);fscanf(fp,%d,%f,很少用,23,PPT学习交流,顺序文件的读写二进制读写,fread(buffer,size,count,fp);fwrite(buffer,size,count,fp);,读/写数据的首地址,读/写的字节数,读/写的数据项数,文件指针,24,PPT学习交流,顺序文件的读写二进制读写,例10.4从键盘输入10个学生的数据(4个数据项),存放在结构体数组中,再将数据写入文件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年西藏自治区拉萨市重点学校高一入学语文分班考试试题及答案
- 2026年宁夏小升初(语文)真题及答案
- 2026-2031年中国零钱经济行业市场调查研究及发展前景预测报告
- 2026年山西省临汾市以中小学教师招聘考试试卷及答案
- 2026年宁夏小升初数学(真题)试卷(含答案)
- 2026年黑龙江高职单招(语文)考试试题含答案
- 模块二 第5讲 介词(短语)
- 2025-2026学年河北省邢台市高三第三次测评语文试卷含解析
- 湖南省湘西土家族苗族自治州2025-2026学年高一下学期期末语文试题(原卷版)
- 东盟跨境数字药品上市许可持有人跨国变更线上申报程序简化-基于东盟药品协调工作委员会药品注册指南实证
- 2025年安全培训试卷及答案-矿山地质员专业测试
- 隧道光面爆破的施工方案
- ODCC AI 超节点内存池化技术白皮书
- 雨季电气安全用电培训课件
- DB46-484-2019 生活垃圾焚烧污染控制标准
- 电池运维管理办法
- 南京公房承租管理办法
- 学校食堂改造工程可研报告
- 工厂处理客诉培训
- 《凝血因子检查》课件
- 老年高血压特点及临床诊治流程专家共识(2024)解读
评论
0/150
提交评论