- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 文件操作 1207精要
文件操作
学习目标
了解文件的概念
掌握文件的打开与关闭操作
掌握文件的读写操作
对于一台计算机而言,最基本的功能就是存储数据。数据在电脑上都是以文件的形式存放的。中也经常需要对文件进行操作。本章针对使用过计算机的人,对“文件”这个词都不会陌生,平时使用Word工具写出的文档、用Excel 设计的统计表、用C语言编写的程序等都是文件。本节将针对文件、文件指针、文件位置指针等相关概念进行详细地讲解。
大多数应用程序都需要实现与设备之间的数据传输,例如,键盘可以输入数据、显示器可以显示程序的运行结果等,在C语言中将这种通过不同输入/输出设备(键盘、内存、显示器、网络等)之间的数据传输抽象表述为“流”。流实际上就是一个字节序列,输入程序的字节序列被称为输入流,从程序输出的字节序列被称为输出流。为了方便读者更好的理解流的概念,可以把输入流和输出流比作两根“水管”,如图10-1所示。
图10-1中,输入流被看成一个输入管道,输出流被看成一个输出管道,数据通过输入流从源设备输入到程序,通过输出流从程序输出到目标设备,从而实现数据的传输。
1、文本流和二进制流
输入输出流还可以进一步细分为,文本流(字符流)和二进制流。它们之间的主要差异是,在文本流中输入输出的数据是一系列的字符,可以被修改。在二进制流中输入输出数据是一系列字节,不能以任何方式修改。
2、预定义的流
C语言中有三个系统预定义的流,分别为标准输入流(stdin,全称standard input)、标准输出流(stdout,全称standard output)和标准错误输出流(stderr,全称standard error)。这三个标准流分别对应于键盘上的输入、控制台上的正常输出和控制台上的错误输出。它们都是在stdio.h头文件中预定义的,程序只要包含这个头文件,在程序开始执行时,这些流将自动被打开,程序结束后,则自动关闭,不需要做任何初始化准备。
文件标识
从图10-2中我们可以看出,有一个名为Examle01的文件,它的文件类型是txt,该文件可以在“D:\itcast\chapter10\”这个路径下找到。
文件名主干的命名规则通常遵循标识符的命名规则,其文件后缀标识文件的性质,一般不超过3个字母,如txt、doc、jpg、c、exe等。
文件的分类
根据数据的组织形式,数据文件可分为文本文件和二进制文件。下面将针对这两种文件的存储形式进行详细地讲解。
1、二进制文件
数据在内存中是以二进制形式存储的,如果不加转换地输出到外存,就是二进制文件。可以认为二进制文件就是存储在内存的数据的映像,所以也称为映像文件。
二进制存放形式
从图10-3中可以看出,整数100000转换成二进制0000000110100000存到磁盘上了,说明用二进制形式输出数值,可以节省外存空间(仅需4个字节)和转换时间(把内存中的数据直接映射到磁盘上),但存放的内容不够直观,需要转换才能看到存放的内容。
2、文本文件
文本文件又称为ASCII文件,每一个字节放一个字符的ASCII码。例如有整数100000,如果用文本形式输出到磁盘上,那么在磁盘上的存放形式如图10-4所示。
从图10-4中可以看出,整数100000以字符串的形式被存放到磁盘上了,说明用ASCII码形式输出时字节与字符一一对应,一个字节代表一个字符,因而便于对字符进行逐个处理,也便于输出字符,但一般占存储空间较多(需占6个字节),而且要花费转换时间(二进制形式与ASCII码间的转换)。
从上面的两个例子中我们可以看出二进制文件和文本文件的优劣。综合来说,如果我们希望加载文件和生成文件的速度较快,并且生成的文件较小,我们应该用二进制文件保存数据;如果我们希望生成的文件无需经过任何转换就可看到其内容,我们应该用文本文件保存数据。
文件缓冲区
使用文件缓冲区可以减少磁盘的读写次数,延长磁盘的使用寿命,而且计算机对缓冲区的操作大大快于对磁盘的操作,所以使用文件缓冲区可提高计算机的运行速度。
文件指针
在C语言中,对文件的所有操作都必须依靠文件指针来完成。要想对文件进行读写操作,首先必须将文件与文件指针建立联系,然后通过文件指针来操作相应的文件。
文件指针的定义格式如下所示:
FILE * 变量名
例如下面的定义语句:
FILE * fp;
变量fp是一个指向FILE类型数据的指针变量,可以使fp指向某一个文件的文件信息区,通过该文件信息区中的信息访问该文件,也就是说,通过文件指针变量能找到与它关联的文件。
需要注意的是,此时的fp指向的FILE结构体还未与任何文件建立联系,必须调用fopen()函数为文件指针变量和要操作的数据文件建立联系。
一个文件指针变量只能指向一个文件,不能指
您可能关注的文档
- 二十世纪的美国戏剧要点.ppt
- 第10章 农药兽药残留及化学污染物-WT精要.ppt
- 二十道适合糖尿病人的菜谱要点.doc
- 第10章 单片机数据采集系统PCB板制作精要.ppt
- 第10章 参数估计精要.ppt
- 二下语文园地一要点.ppt
- 第10章 单片机键盘显示器接口精要.ppt
- 第10章 同义词和序列--《Oracle数据库基础与应用教程》书籍教案精要.ppt
- 第10章 国际收支概论精要.ppt
- 二十种饼的做法要点.doc
- 高考江苏一轮 物理 专项复习 实验8 验证动量守恒定律 课件.pptx
- 2025年高考英语新课标全国Ⅰ卷(原卷版+听力音频+解析版).docx
- 低空安全态势AI感知监管平台建设方案.pptx
- 智慧城市民意速办基于AI大模型应用建设方案.pptx
- MCP+农业领域智能体架构设计与运作机制规划方案.pptx
- 低空经济空中交通管理与新一代低空飞行服务体系建设方案.pptx
- 2026届高考语文复习:信息类文本阅读选择题夺分技巧.pptx
- 5】2025-2026学年新学期开学主题班会课件-高三.pptx
- 商学院通识课程库采购项目服务方案投标文件(技术方案).pdf
- 超宽范围红外光谱仪采购项目服务方案投标文件(技术方案).pdf
最近下载
- 医用耗材;目录管理;优化方案;耗材分类.docx VIP
- 上交大《高速铁路客运组织》(上交大)教学资料 教学课件 模块8.pptx VIP
- 新编剑桥商务英语初级第三版教案.pdf VIP
- 发酵食品工艺学绪论.ppt VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(必威体育精装版).pdf VIP
- 滑板作业安全技术交底.docx VIP
- eVTOL适航认证标准2025年法规解读:对低空经济产业合规性要求.docx VIP
- 青岛鲁能领秀城项目营销策略汇报提案.pptx VIP
- 睾丸挫伤护理查房ppt.pptx VIP
- 2024-2025学年度二年级数学下学期期末测试卷(含答案).pdf VIP
文档评论(0)