中央电大C语言A课程辅导_第1页
中央电大C语言A课程辅导_第2页
中央电大C语言A课程辅导_第3页
中央电大C语言A课程辅导_第4页
中央电大C语言A课程辅导_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。c 语言程序设计a 课程辅导 ( 8)- 第 8 章 文件主要内容 :一、文件的概念二、文件的打开和关闭三、文本文件的访问操作四、二进制文件的访问操作五、课程总复习一、文件的概念文件是计算机外部设备中一个被命名的信息单位? 标准输入输出 ( i/o) 设备文件 : 如 stdin 和 stdout 分别表示标准输入设备键盘和标准输出设备显示器。这两个文件流标识符在stdio.h系统头文件中有定义,类型为 file*,其中文件类型( file)也在 stdio.h中定义。我们能够随时从stdin中读出 (即从键盘输入到内存)信息 ,也

2、能够随时向stdout中写入 (从内存输出到文件 )信息。资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。?外存储设备中保存的文件:由用户命名 ,并规定访问文件的方式。如只允许向其写入信息的输出方式的文件,只允许从已有文件中读出信息的输入方式的文件,又允许写入又允许读出的输入和输出方式的文件等。文件的 3 种基本的访问方式输入方式 :从文件读出数据到内存变量(数组 )中保存。输出方式 :把内存变量 (数组 )的内容送入到文件中保存。既输入又输出方式:对于同一个文件,能够既进行输入又进行输出。文件名给需要使用的数据文件所起的名字,它包括 文件主名 和扩展名两部分。符合命名规定的任何

3、标识符都能够作为主名,如可用 gongzi作为工资文件的主名。扩展名由 1-3 个字符所构成 ,如可用 txt作为一个扩展名。在一个文件名中能够省略扩展名。若带有扩展名,则用句点与主名分开。如works.ran 、 工资 .bin等。文件类型和文件流在 c语言系统中 ,系统预定义了一种文件类型,文件类型标识符资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。为 file, 当需要使用一个数据文件时 , 必须根据该文件名和访问方式返回一个具有 file 类型的指针值 , 接着把这个值保存到具有file* 类型的指针变量中,以后就用这个指针变量(文件流 ) 代替所对应的文件 ,完成对文

4、件的操作。我们前面提到的stdin和 stdout分别是系统定义的标准输入和输出文件流。文件结束符 (eof)在每个数据文件的结尾都利用一个字节保存一个文件结束标记( -1) ,在 stdio.h中, 把 -1 定义为符号常量eof。文件长度文件中保存数据所占有的存储字节数。当一个文件用来保存记录结构的数据时 ,有时也把保存的记录个数称为文件长度,此时的文件字节长度等于记录个数乘以记录结构类型的长度。数据文件分类c 语句文件按存储信息方式的不同可分为字符文件 和字节文件 两种。字符文件又称 文本文件 或 ascii 码文件。字节文件又称 二进制文件或内部格式 文件。字符文件 :文件中保存的字符

5、串信息和数值信息都采用字符的资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。ascii 码的形式。当然对于汉字信息采用2 字节的汉字区位码。如保存常数 23 时,对应保存的ascii 码为 50 和 51。字节文件 :文件中保存的字符串信息仍采用字符的ascii 码的形式,而保存的数值信息则采用其内部格式。如保存常数23 时,因为它是一个 int类型的常数 ,须占用 4 个字节 ,对应保存的二进制数为00010111,前面还有3 个字节的24 个 0。文件操作函数包括打开文件、关闭文件、读取数据、写入数据、移动文件指针位置等 ,它们的函数原型都保存在系统头文件stdio.h中,调

6、用这些函数时必须经过#include命令包含此头文件。二、文件的打开和关闭1. 打开数据文件要访问一个文件,首先要按照一定的方式打开一个文件,并使之与一个文件流相联系,然后才能进行存取数据的操作。当对一个文件的处理操作结束后,就把它关闭掉。打开一个文件 ,需要调用 c 函数库中的fopen() 函数 ,得到相对资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。应的文件流。该函数的原型为:file* fopen(const char* fname, const char* mode);fname 参数 :用于指向要打开文件的文件名字符串,该字符串内能够带有盘符和路径名,若省略盘符和路

7、径名则隐含为当前盘和当前路径 ,即保存当前程序文件的磁盘和路径,mode 参数 :用于指定打开文件的方式,它也是以字符串的形式给出的 , mode 是指向该字符串的指针。如果调用该函数成功,则返回一个文件 指针 ,即文件名为fname、 打开方式的mode所对应的文件流,以后就利用它操作文件。如果调用该函数失败,则返回 空指针 (null),表明没有打开指定的文件 ,不能进行访问操作。2. 打开数据文件的方式打开数据文件的方式有以下用字符串表示的12 中不同方式 :r/打开一个用于输入的文本文件,若文件不存在则打开失败w/打开一个用于输出的文本文件,存在清空 ,不存在则建立资料内容仅供您学习参

8、考,如有不当或者侵权,请联系改正或者删除。a/打开一个用于向尾部追加输出的文本文件,不存在则建立rb/打开一个用于输入的二进制文件,若文件不存在则打开失败wb/打开一个用于输出的二进制文件,存在清空 ,不存在则建立ab/打开一个用于向尾部追加输出的二进制文件,不存在则建立r+/打开一个用于读/ 写操作的文本文件,不存在则打开失败w+/打开一个用于读/ 写操作的文本文件,不存在则建立a+/打开一个用于读/ 追加写操作的文本文件,不存在则建立rb+/打开一个用于读/ 写操作的二进制文件,不存在则打开失败wb+/打开一个用于读/ 写操作的二进制文件,不存在则建立资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。ab+/打开一个用于读/ 追加写操作的二进制文件,不存在则建立总之 : r(read)为读、 w(write)为写、 b(binary)为二进制、+为读 / 写3. 打开数据文件举例(1) file* fp1;/定义一个文件指针变量fp1fp1=fopen(xxk1.dat, w); /以只写方式打开当前路径和目录中/的本文文件xxk1.dat,返

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论