- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十二章 文件操作
教学要求
1. 掌握:文件的打开和关闭函数;文件的读写过程;文件读写函数的使用。
2. 理解:文件及文件指针的相关概念。
3. 了解:文件操作的相关函数的使用。
一、文件的概念
(一)文件、文件系统与文件名
文件是计算机科学中很重要的一个概念,是一组相关数据的有序集合。每个这样的有序数据集都有一个标识名称,叫做文件名。本书在前面9章中所涉及的源程序文件、目标文件、可执行文件、库文件(头文件)等都是文件。文件还有很多其他的形式,但是万变不离其宗,都是写在外存如磁盘等之上的,在使用时才调入内存中来。文件的体积有大有小,其中有很多都非常大,而且都需要长期保存,所以使用内存来存储就不合适了,这就是将文件存放于外存上的原因。对于操作系统而言,文件是一维的无结构连续字符序列。
文件系统是一种用于向用户提供底层数据访问的机制。它将设备中的空间划分为扇区,一般每个扇区512字节。若干个扇区组成一个簇,数据存储在这些簇中,大小被修正为占用整数个簇。由文件系统软件来负责将这些簇组织为文件和目录,并记录哪些簇被分配给了哪个文件,哪些簇是损坏的以及哪些簇没有被使用。文件系统并不一定只在特定存储设备上出现。它是数据的组织者和提供者,至于它的底层,可以是磁盘,也可以是其它动态生成数据的设备(比如网络设备)。文件系统可以分为磁盘文件系统、数据库文件系统、网络文件系统、事务文件系统和特殊文件系统等。
磁盘文件系统是一种设计用来利用数据存储设备来保存计算机文件的文件系统,最常用的数据存储设备是磁盘驱动器,可以直接或者间接地连接到计算机上。例如:FAT、exFAT、NTFS、HFS、HFS+、ext2、ext3、ext4、ISO 9660、ODS-5和UDF。 有些文件系统是进程文件系统(也有译作日志文件系统)或者追踪文件系统。基于数据库的文件系统的概念是文件管理方面的一个新概念。不再(或者不仅仅)使用分层结构管理,文件按照他们的特征进行区分,如文件类型、专题、作者或者亚数据进行区分。于是文件检索就可以按照SQL风格甚至自然语言风格进行。BFS和WinFS就是很典型的数据库文件系统。而网络文件系统(NFS,Network File System)则是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制。
不论文件系统底层是不是存储设备,文件系统都可以把数据组织为文件及目录的形式。文件系统一般会把文件名链接到某种文件分配表中(如MS-DOS的FAT文件系统),或者链接到一个文件链表的节点上(如Unix-like的文件系统)。目录可以是一维结构,也可以是分层式结构,后者可以在目录中创建子目录。
有的文件系统中,文件名是结构化的,带有文件名扩展信息及版本号等;而另一些文件系统里,文件名只是一个简单的字符串,每个文件的属性信息保存在其它地方。
(二)文件的分类
从不同的角度可对文件作不同的分类。从用户的角度看,文件可分为普通文件和设备文件两种。
1. 普通文件:指驻留在磁盘或其它外部介质上的一个有序数据集,可以是源文件、目标文件、可执行程序;也可以是一组待输入处理的原始数据,或者是一组输出的结果。对于源文件、目标文件、可执行程序可以称作程序文件,对输入输出数据可称作数据文件。
2. 设备文件:指与主机相联的各种外部设备,如显示器、打印机、键盘等。在操作系统中,把外部设备也看作是一个文件来进行管理,把它们的输入、输出等同于对磁盘文件的读和写。例如显示器就是被定义为标准输出文件,一般情况下在屏幕上显示有关信息就是向标准输出文件输出。如前面经常使用的printf、putchar等函数就是这类输出。
从文件编码的方式来看,文件又可以分为ASCII码文件和二进制码文件两种。ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。例如,数5678的存储形式为:
ASCII码: ↓ ↓ ↓ ↓
十进制码: 5 6 7 8
共占用4个字节。
ASCII码文件可在屏幕上按字符显示,例如源程序文件就是ASCII文件,用DOS命令TYPE可显示文件的内容。由于是按字符显示,因此能读懂文件内容。
二进制文件是按二进制的编码方式来存放文件的。例如,整数1234的存储形式则为:D2040000H(补码形式),这样只占二个字节。二进制文件虽然也可在屏幕上显示,但其内容无法直接被人类读懂。C系统在处理这些文件时,并不区分类型,都看成是字符流,按字节进行处理。
输入输出字符流的开始和结
您可能关注的文档
- 电子技术基础(模拟)与实训共射放大电路单管放大电路.docx
- 电子技术基础电路工作原理及分析2-2-2共集放大电路工作原理及分析.doc
- 电子技术基础电压比较器3-5-1电压比较器.doc
- 电子技术基础软件仿真案例教学1-2-2直流稳压电源仿真调试.doc
- 电子商务法律法规(旧)第四章FGA040301博客告博客名誉权案.doc
- 电子商务概论竞争对手监测与品牌传播品牌建设.docx
- 电子商务概论微信营销的业务要素微淘.docx
- 电子商务概论引导产品及营销活动pv(页面浏览量).docx
- 电子设计仿真与EDA技术3.FPGA配置器件EPCSx器件配置FPGA.doc
- 定量化学分析认识配位滴定法配位滴定法概述教学设计.doc
- 发电厂PLC控制系统典型程序设计课题6花式喷水池装置.doc
- 发动机机械系统检修蒸发控制系统蒸发控制系统.doc
- 法学基础法学基础法学基础课程学习指南.doc
- 反应器操作技术间歇操作釜式反应器的动力学计算法间歇操作反应釜的动力学计算法.doc
- 房地产营销与策划房地产营销与策划第九届全国策划大赛.docx
- 房地产营销综合实训房地产营销综合实训准备(20190501市场营销专业)成都职业技术学院专业教学标准模板(2019版).docx
- 非物质文化遗产概论传统医药针灸.docx
- 非遗电子读物设计非遗电子读物版式设计非遗电子读物版式设计—界面中的文字2.doc
- 非遗动画设计拓展知识14《困境系列-太多了2》-刘尧远3.doc
- 非遗动画设计拓展知识学生优秀作品档案表-广告专业-匿迹系列文创产品-张石榴.doc
文档评论(0)