




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1、c编程、第10章文件、山西大同高等院校物电学院、2020/7/22、2、第10章文件、10.1文件的概念10.2文本文件的读写10.3二进制文件的读写、2020/7/22、3例如程序计程仪. cc语言的源计程仪栏文本文件*.OBJ营销对象文件二进制文件*.EXE可执行文件存储二进制文件配置文件是有序的数据序列。 习语言将文件作为1字符(字节)序列处理,与文件的网站数据库以字符(字节)为单位进行。 10.1文件概要,10.1.1文件和文件指针,1 .文件是什么,2020/7/22,4,4,老虎钳文件是习语言,“文件”的概念进一步扩大,连接到男公关的投入产出数据老虎钳都被认为是一个文件,即实际
2、的与外部设备的投入产出是对设备文件的读写。10.1文件的概要、10.1.1文件和文件指针、1 .文件是什么、2020/7/22、 ASCII文件(或文本文件) ASCII查询密码文件的格式为每5、5个文件存储一个ASCII查询密码,因为二进制文件的二进制文件中的数据以内存中的二进制存储格式存储二进制文件不能在DOS执行操作系统下直接读取。10.1文件的概要、10.1.1文件和文件指针、2 .文件的种类、2020/7/22,6、6、6,例如整数1949分别存储在两个数据文件中。ASCII文件: ASCII查询密码、二进制文件:补充查询密码、4字节占用、2字节占用、10.1文件的概要、10.1.1
3、文件和文件指针、2 .文件的种类、2020/7/22,7系统处理方法,按使用中的每个缓冲文件保存在内存中对文件的读写数据都是通过缓冲区进行的。 非缓冲文件由非缓冲文件系统处理的文件称为非缓冲文件。 如果系统处理非缓冲文件,则不打开文件的缓冲区,需要由程序设计师自己设置和管理缓冲区。 自83年以来,ANSI C标准不再使用非缓冲文件系统,并以缓冲文件系统处理文本文件和二进制文件。10.1文件的概要、10.1.1文件和文件指针、2 .文件的种类、2020/7/22,8、8、8,系统处理文件的过程是投入产出文件的过程。 从文件读取数据时,先从磁盘文件向缓冲区一次读取一批数据,然后从缓冲区向变量一次发
4、送一个数据。 向文件写入数据时,也将变量的数据发送到缓冲区,等待缓冲区填满后,一起保存到磁盘文件中。10.1文件的概要、10.1.1文件和文件指针、3 .缓冲文件和文件指针、2020/7/22、9、10.1文件的概要、10.1.1文件和文件指针、3 .缓冲文件和文件类型为系统定义,stdio.h标头缓冲区习语言情况下,磁盘文件和解老虎钳文件的读/写都使用FILE类型的结构变量进行。 因此,必须首先为每个正在使用的磁盘文件定义FILE类型的文件指针变量,并指向该变量。FILE *文件指针变量名称,类型短级别; /*文件/emptylevelofbuffer * /未指定标志。 文件状态标志*/c
5、har FD; /*文件描述符*/unsignedcharhold;/* ungetccharifnobuffer * /短大小。 缓冲器大小* /未指定的char *缓冲器; 数据传输缓冲器* /未指定的卡片* curp;/* currentactivepointer */unsignedistemp;/*临时文件指示符* /短令牌;/* usedforvaliditychecking * /文件; /* This is the FILE object */,2020/7/22,10,标准文件是外部数据老虎钳中的三种特殊的数据老虎钳文件。 这些个的文件指针是系统定义的,由系统自动打开和关闭。
6、 这些个三个标准文件分别指定为标准输入文件,文件指针指定为stdin,系统指定为牛鼻子板。 标准输出文件,文件指针指定为stdout,系统指定为显视器。 标准错误输出文件,文件指针输出stderr,系统指定输出显示器,错误信息。10.1文件概要、10.1.1文件和文件指针、4 .标准文件、2020/7/22、11、10.1文件概要、10.1.2文件的打开和关闭、操作文件的一般步骤打开文件读写文件关闭、读取关闭文件:切断文件和计程仪程序的联系,释放文件缓冲区。 习语言的投入产出函数库中提供了大量的函数,用于完成对数数据文件的创建、数据的读写、数据的添加等操作。 在pluma中调用这些个函数时,必
7、须首先使用include命令包含stdio.h文件。2020/7/22、12、常用调用形式: FILE *fp; fp=fopen (文件名、文件使用方法); 文件名:需要打开的文件的名称(字符串)。 文件的使用方法:具有特定意义的符号。10.1文件概要、10.1.2文件的打开和关闭、1 .文件打开函数fopen ()、函数功能:以指定的文件使用方法打开指定的文件。 如果成功打开文件,则为该文件分配文件缓冲区和FILE类型变量,并返回FILE类型指针如果未打开该文件,则返回NULL。2020/7/22、13、文本文件的三种基本使用方法“r”:只读方式打开文件以读取(输入)文本文件。 如果文件不
8、存在,则返回NULL。 “w”:写入方式只是为了写入(输出)文本文件而打开文件。 如果文档不存在,则创建新文档如果文件已存在,则将文件清空。 “a”:追加方式为了写入(输出)文本文件而打开文件。 如果文件已存在,则保留原始文件的内容;如果不存在将新数据添加到原始数据后面的文件,则返回NULL。10.1文件概要、10.1.2文件的打开和关闭、2020/7/22、14、二进制文件的基本使用方法“rb”:只读方式是二进制打开文件的读取(输入)。 如果文件不存在,则返回NULL。 wb :写入方式只是为了写入(输出)二进制文件而打开文件。 如果文档不存在,则创建新文档如果文件已存在,则将文件清空。 “
9、ab”:添加方式为了写入(输出)二进制文件而打开文件。 如果文件已存在,则保留原始文件的内容;如果不存在将新数据添加到原始数据后面的文件,则返回NULL。10.1文件的概要、10.1.2文件的打开和关闭、2020/7/22、15、10.1文件的概要、10.1.2文件的打开和关闭、文件的其他打开方法“r”:文本不存在可能的文件时文件的存在内容不为空的情况。 w :可以读取/写入文本文件。 如果文件已存在,则首先清空文件的原始内容。 “a”:可进行文本文件的读取/追加操作。 文件内容不为空。 “rb”:可以读取/写入二进制文件。 “wb”:可以读取/写入二进制文件。 “ab”:可以读取/追加操作二
10、进制文件。2020/7/22,16、检查文件打开操作是否成功的if (FP=fopen (文件名,r ) )=null )打印机(“cannot open”) exit (0); 检查是否可以以只读方式打开文件名为filename的文件。 exit函数的作用:结束计程仪程序的执行,将实际残奥仪表0作为函数门限值传递给执行操作系统。10.1文件概要、10.1.2文件开关、2020/7/22、17、常用调用形式: FILE *fp; fclose(fp ); fp :已经打开的文件指针。10.1文件的概要、10.1.2文件的打开和关闭、2 .文件关闭函数fclose ()、函数功能:关闭fp指定的
11、文件,释放该文件的缓冲区、FILE型变量、文件指针。 文件关闭后,返回0如果文件关闭失败,则返回0以外的值。2020/7/22、18、常用调用形式: FILE *fp; 浮点(ch,fp ); ch :需要输出的文字。 字符常数或字符变量fp :文件指针变量。 对文本文件的读写必须按照文件中字符的优先顺序进行,只能在操作第I个字符后操作第i 1个字符。 操作文件时,文件的读/写指针由系统自动向后移动。10.2文本文件的读写、10.2.1文件的字符投入产出函数、1 .字符输出函数fputc () (或putc () )、函数功能:在fp指向的文件中写入1个字符(ASCII查询密码)如果输出操作成
12、功,函数返回写入的字符,否则、系统定义的文本文件结束标志。 值是(-1 )。 putc函数与fputc函数的功能相同。 在stdio.h文件中定义为#define putc(c,f) fputc(c ),f )的标准文件中使用的putchar函数是在stdio.h文件中定义为#的fputc函数的特殊用法ch=fgetc(fp ); ch :可以是文字变量也可以是整数变量fp :文件指针变量。10.2文本文件的读写、10.2.1文件的字符投入产出函数、2 .字符输入函数fgetc () (或getc () )、函数功能:从fp所指向的文件(该文件必须以读写方式打开)读取字符输入操作成功后,函数进
13、行读取getc函数与fgetc函数的功能相同。 在stdio.h文件中定义为#define getc(f) fgetc(f )的标准文件中使用的getchar函数是fgetc函数的特殊用法,在stdio.h文件中定义为#definegetchar ()的# inn /*文件指针变量fp */int c; 的双曲馀弦值。 /* c是存储字符的变量*/char filename40; /* filename用于存储数据文件名*/printf (文件名: )。 /*磁盘文件名*/gets (文件名); if (FP=文件名,w )=null )打印机(cantopenthe % sn,文件名):ex
14、it (0);10.2文本文件的读写、10.2.1文件的文字投入产出函数、测试开始文件是否成功、2020/7/22、21、while (c=getchar () ) )!=EOF) /*牛鼻子板文件结束标志:输入Ctrl z,显示z,然后返回回车*/putc(c,fp ); /*将从牛鼻子板键入的字符写入文件*/fclose(fp ); /*建立文件结束,关闭文件*/printf(outfile:n ); FP=fopen (文件名,r ); /*以读取方式打开文档*/while (c=getc(fp ) )!=EOF) /*无法读取文件结束标志时*/putchar(c ); /*将读取的文字
15、*/fclose(fp )显示在显示器上。 /*读取文件结束、有关文件*/、10.2文本文件的读取写入、10.2.1文件的文字投入产出函数、2020/7/22、22、常用的调用形式: FILE *fp; 火焰(火焰); fp :文件指针变量。10.2文本文件的读写、10.2.2文件结束测试函数、函数功能:测试fp指向的文件是否在读取文件末尾。 如果该文件未终止,则返回0。如果该文件终止,则返回非0的值。进行文本文件的读取操作时,例如fgetc ()返回EOF,则可进行文件结束处理。 但是,由于-1是二进制文件中的有效数据,因此提供了更常见的文件退出测试函数feof。 复制2020/7/22、23,例如复制磁盘文件。 包括主()文件* infp、*出FP; char infile40、outfile40; 英寸; 打印(输入文件名: ); 扫描(% s,信息); printf (输出文件名: ); 扫描(% s,轮廓); 打开if(infp=fopen(infi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年二月化粪池微生物活性定期检测与维护合同
- 创意粉笔毕业论文答辩框架
- 酒精壁炉知识培训课件
- 2025年学校物理老师教学方案
- 酒水品鉴知识培训课件
- 2025年纪念三八妇女节111周年活动方案
- 伺服系统与工业机器人课件第6章 伺服驱动器的参数配置
- 员工股权激励方案实施细则
- 2025年创意儿童节活动方案策划书
- 2025年度护理工作方案
- 2024年贵州省高考历史试卷真题(含答案解析)
- DB11∕T 365-2016 钢筋保护层厚度和钢筋直径检测技术规程
- 中小学教师职业道德规范(2023年修订)全文1500字
- (新版)精益化管理知识应知应会考试题库500题(含答案)
- 行政办事员五级(初级工)考试复习题及答案
- 二十届三中全会精神知识竞赛试题及答案
- 中国香氛香薰行业市场需求规模与投资效益预测报告2024-2030年
- 对称性花纹色织物劈花设计
- 《低空航空器起降点基础设施配置技术要求》(征求意见稿)
- 浙江省宁波市北仑区2023-2024届八年级下册期中数学模拟试题(附答案)
- 质量、环境、职业健康安全管理体系程序文件
评论
0/150
提交评论