- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10.2.1 用fopen函数打开数据文件 通常将fopen函数的返回值赋给一个指向文件的指针变量。如: FILE *fp; fp=fopen(“a1”,”r”); fp和文件a1相联系,fp指向了a1文件 10.2.1 用fopen函数打开数据文件 在打开一个文件时,通知编译系统以下3个信息: ①需要访问的文件的名字 ②使用文件的方式(“读”还是“写”等) ③让哪一个指针变量指向被打开的文件 使用文件方式参见教材表10.1。 说明: (1) 用“r”方式打开的文件只能用于向计算机输入而不能用作向该文件输出数据,而且该文件应该已经存在,并存有数据,这样程序才能从文件中读数据。 不能用“r”方式打开一个并不存在的文件,否则出错。 说明: (2) 用“w”方式打开的文件只能用于向该文件写数据(即输出文件),而不能用来向计算机输入。 如果原来不存在该文件,则在打开文件前新建立一个以指定的名字命名的文件。 如果原来已存在一个以该文件名命名的文件,则在打开文件前先将该文件删去,然后重新建立一个新文件。 说明: (3) 如果希望向文件末尾添加新的数据(不希望删除原有数据),则应该用“a”方式打开 但此时应保证该文件已存在;否则将得到出错信息。 打开文件时,文件读写标记移到文件末尾 说明: (4) 用r+、w+、a+方式打开的文件既可以用来输入数据,也可以用来输出数据。 用r+方式时该文件应该已经存在。 用w+方式则新建立一个文件,先向此文件写数据,然后可以读此文件中的数据。 用a+方式打开的文件,原来的文件不被删去,文件读写位置标记移到文件末尾,可以添加,也可以读。 说明: (5) 如果打开失败,fopen函数将会带回一个出错信息。fopen函数将带回一个空指针值NULL 常用下面的方法打开一个文件: if ((fp=fopen(“file1”,’r″))==NULL) {printf(“cannot open this file\n”); exit(0); } 终止正在执行的程序 说明: (6) C标准建议用表10.1列出的文件使用方式打开文本文件或二进制文件,但目前使用的有些C编译系统可能不完全提供所有这些功能 说明: (7) 计算机输从ASCII文件读入字符时,遇到回车换行符,系统把它转换为一个换行符,在输出时把换行符转换成为回车和换行两个字符。在用二进制文件时,不进行这种转换,在内存中的数据形式与输出到外部文件中的数据形式完全一致,一一对应。 说明: (8) 程序中可以使用3个标准的流文件:标准输入流、标准输出流、标准出错输出流。 系统已对这3个文件指定了与终端的对应关系 标准输入流是从终端的输入 标准输出流是向终端的输出 标准出错输出流是当程序出错时将出错信息发送到终端 程序开始运行时系统自动打开这3个标准流文件。因此,程序编写者不需要在程序中用fopen函数打开它们。所以以前我们用到的从终端输入或输出到终端都不需要打开终端文件。 10.2.2 用fclose函数关闭数据文件 关闭文件用fclose函数。fclose函数调用的一般形式为 fclose(文件指针); 例如: fclose (fp); 如果不关闭文件将会丢失数据。 第10章 对文件的输入输出 10.1 C文件的有关基本知识 10.2 打开与关闭文件 10.3 顺序读写数据文件 10.4 随机读写数据文件 10.5 文件读写的出错检测 10.1 C文件的有关基本知识 10.1.1 什么是文件 10.1.2 文件名 10.1.3 文件的分类 10.1.4 文件缓冲区 10.1.5 文件类型指针 10.1.1 什么是文件 文件有不同的类型,在程序设计中,主要用到两种文件: (1) 程序文件。包括源程序文件(后缀为.c)、目标文件(后缀为.obj)、可执行文件(后缀为.exe)等。这种文件的内容是程序代码。 10.1.1 什么是文件 文件有不同的类型,在程序设计中,主要用到两种文件: (2) 数据文件。文件的内容不是程序,而是供程序运行时读写的数据,如在程序运行过程中输出到磁盘(或其他外部设备)的数据,或在程序运行过程中供读入的数据。如一批学生的成绩数据,或货物交易的数据等。 本章主要讨论的是数据文件 10.1.1 什么是文件 在以前各章中所处理的数据的输入和输出,从终端的键盘输入数据,运行结果输出到终端显示器上 常常需要将一些数据输出到磁盘上保存起来,以后使用 这就要用到磁盘文件 10.1.1 什么是文件 操作系统把各种设备都统一作为文件处理 从操作系统的角度看,每一个与主机相联的输入输出设备都看作是文件。例如, 终端键盘是输入文件 显示屏和打印机是输出文件 10.1.1 什么是文件 “文件”指存储在外部介质上数据的集合 一批数据是以文件的
文档评论(0)