- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章-文件
第十章 文件 本章目录 10.1文件概述 为了方便大量数据的输入输出和长期存储,有必要在C语言的程序设计中引入文件的知识。“文件”是指记录在外部介质上的数据的集合,是计算机中数据在存储介质上的存在形式。文件通常分为两大类:程序文件和数据文件。程序文件就是通常所说的可执行文件,是计算机指令和少量数据的集合。数据文件只包含待程序文件处理的数据,通常用来存储大量数据,例如:VCD文件、MP3文件、数据库文件。 C语言中的程序通过对文件的读、写等操作来实现对外部存储介质(例如磁盘)上数据的物理操作。通过C语言提供的文件操作函数,可以简单、高效、安全地访问外部数据。 1.文件类型 文件按其存储数据的格式分为两大类型:文本文件和二进制文件。两种文件格式主要有如下几点区别: 1)文本文件由可显示字符组成,如字母、数字、符号;而二进制文件只是若干长度的0、1序列。 2)文本文件以字符(8位)为单位写入和读取;二进制文件则以数据块为 单位进行读写。 3)文本文件用于存储文字信息,说明文件、C语言源程序文件都是文本文件;二进制文件用于存储非文本数据,如二进制执行代码、图像、声音等。 10.1文件概述 4)文本文件可以直接在屏幕上显示文件内容;二进制文件虽然可以显示,但显示的内容无意义 2.文件类型指针 在C语言中引入了文件指针的概念,所有对文件的操作都通过文件指针完成。 文件指针类似于C语言中的普通指针,但文件指针不是指向一段内存空间,而是指向一个文件信息结构体,该结构体描述一个文件的相关信息,其定义在stdio.h头文件中。用户无需了解有关此结构体的细节,只需要知道如何使用文件指针即可。 声明一个文件指针使用以下语句: FILE * 文件指针名 1)要使用文件指针进行文件相关操作必须在程序中包含stdio.h头文件。 2)“FILE”全是大写字符,若改成小写字母是错误的。 3)声明一个文件指针后,就可以使用各种函数打开、关闭文件以及进行读写操作。 C语言中,对文件的基本操作可以说就是文件的打开和关闭、文件的读写等操作。 10.2文件的打开与关闭 在实际应用当中,经常要对文件进行处理,C程序对文件的处理过程一般如下: 文件的打开。建立一个新的文件或为存取某一个文件的数据而打开文件 对文件进行读、写或其他操作 关闭文件。文件使用完后,要关闭文件,保存文件的改写。 1.文件的打开(fopen函数) 在C语言中文件的打开库函数来实现,其格式如下: FILE * fp; /*声明一个文件指针*/ fp = fopen(文件名,打开方式); 文件名:是要求打开文件的文件名(包括扩展名),是一个字符串,以双引号括起。如果省略文件路径,则在当前目录下打开文件。 打开放式:有只读、只写、追加、读写几种,使用不同的标识符区分。标识符见表9.1 10.2文件的打开与关闭 10.2文件的打开与关闭 例如: fp = fopen(“abc.txt”,”r”) /* 以只读方式打开abc.txt文件*/ fp = fopen(“abc.c”,”r+”) /*以读写方式打开abc.c文件*/ fopen() 函数的返回值是一个文件信息结构体的地址,该文件信息结构体是描述目标文件的相关信息。调用fopen()函数前必须声明一个文件指针,并使用文件指针接受fopen()函数的返回值。文件指针被赋值后,程序中就通过这个文件指针对目标文件进行操作。若不使用文件指针接受fopen()函数的返回值,则无法对已打开的文件进行访问,调用fopen()函数也是无意义的。 如果不能实现“打开”的任务,fopen函数将会带回一个出错信息。出错的原因可能是用“r”方式打开一个并不存在的文件;磁盘出故障;磁盘已满无法建立新文件等。此时fopen函数将带回一个空指针值NULL(NULL在stdio.h文件中已被定义为0)。 常用下面的方法打开一个文件: if((fp=fopen(“file”,”r”))==NULL) { printf(“cannot open this file\n”); exit(0); } 10.2文件的打开与关闭 即先检查打开的操作有否出错,如果有错就在终端上输出“ca
文档评论(0)