C程序设计-第10章文件.pptVIP

  • 0
  • 0
  • 约4.49千字
  • 约 16页
  • 2018-03-07 发布于湖北
  • 举报
C程序设计-第10章文件

第10章 对文件的输入输出 广东技术师范学院工业中心 陈华竣 C文件基本知识 C文件类型 程序文件 .c .obj .dll .exe …… 数据文件:供程序运行时读写的数据 学生信息、学生成绩、设备信息、…… C文件基本知识 文件是存储在外部介质(磁盘、光盘等)上数据的集合 操作系统以文件为单位对数据进行管理 C语言把文件看作是一个字符(或字节)的序列。 流式文件:输入输出数据流的开始和结束只受程序控制而不受物理符号控制。 C文件基本知识 文件分类 按数据的组织形式,数据文件分为: ASCII文件:文本文件,每个字节存放一个字符的ASCII码 二进制文件:数据按其在内存中的存储形式原样存放 C文件基本知识 文件缓冲区 缓冲文件系统 是指系统自动地在内存区为程序中每一个正在使用的文件开辟一个文件缓冲区 ANSI C标准采用“缓冲文件系统”处理数据文件 文件类型指针 文件结构体 缓冲文件系统为每个正使用的文件在内存开辟文件信息区 文件信息用系统定义的名为FILE的结构体描述,用于存放文件的当前的有关信息。 FILE定义在stdio.h中 文件类型指针 文件型指针变量 通过文件指针变量访问文件 一般只需要使用文件指针完成文件的操作,不必关心文件类型变量的内容。 文件指针变量定义:FILE *fp; 文件指针变量指向内存中的文件信息区的开头 文件的打开与关闭 文件使用方式:打开文件--文件读/写--关闭文件 文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件, 文件关闭后,它的文件结构体被释放。 C程序的文件操作通过库函数实现,包含在stdio.h 文件的打开与关闭 文件的打开(fopen函数) 原型:FILE * fopen(char *name, char *mode); 功能:按指定方式打开文件 返回值:打开成功,返回指向文件结构体的指针;打开失败,返回NULL 调用方式: 文件的打开与关闭 例:FILE *fp; fp=fopen(“a1.txt”, “r”); 说明 打开当前目录下文件名为a1.txt的文件,打开方式“r”表示只读打开。 fopen函数返回指向a1.txt的文件指针,然后赋值给fp,fp与该文件关联。 使用文件名要注意:文件名如果包含路径,要用“\\”或“/”表示。 文件的打开与关闭 13.3 文件的打开与关闭 文件的关闭(fclose函数) 作用:使文件指针变量与文件“脱钩”,不再指向该文件,释放文件结构体和文件指针。 调用方式:fclose(文件指针); 功能:关闭文件指针指向的文件 返回值: 关闭成功,返回0; 关闭失败,返回非0。 13.4 文件的读写 fputc函数 调用方式:fputc(ch, fp); 功能:把一个字符写到磁盘文件上去 返回值: 写入成功,返回写入的字符ch; 写入失败,返回-1,即EOF。 13.4 文件的读写 fread函数 调用方式:fread(buffer, size, count, fp); 功能:从文件中读数据块 返回值: 读成功,返回读的块数; 读出错或已到文件尾,返回0 13.4 文件的读写 fprintf函数和fscanf函数 格式化读写函数 调用方式:fprintf(文件指针,格式字符串,输出列表); fscanf(文件指针,格式字符串,输出列表); 其它读写函数 putw和getw函数 对磁盘文件读写一个字(整数) fgets和fputs函数 从指定的文件读/写一个字符串 * C程序设计 例 int型数10000 内存存储形式 二进制形式 0011000100110000001100000011000000110000 ASCII形式 文本文件特点: 存储量大、速度慢、便于对字符操作 二进制文件特点: 存储量小、速度快、便于存放中间结果 0010011100010000 0000000000000000 0010011100010000 0000000000000000 1 0 0 0 0 程序数据区 输出文件缓冲区 输入文件缓冲区 磁盘 装满缓冲区 装满缓冲区 typedef struct { short level; //缓冲区“满”或“空”的程度 unsigned flags; //文件状态标志 char fd; //文件描述符 unsigned char hold; //如无缓冲区不读取字符 short bsize; //缓冲区的大小 u

文档评论(0)

1亿VIP精品文档

相关文档