MyLecture-C(第8章-文件2012).pptVIP

  • 6
  • 0
  • 约7.55千字
  • 约 26页
  • 2016-05-28 发布于河南
  • 举报
课程主要内容 第8章 文件的使用 主要内容 文件概述 打开与关闭文件 顺序读写文件 随机读写文件 文件概述 文件的概念 存储在外部介质上数据的集合。 文件分类(按数据的组织形式) ASCII文件:文本文件,每个字节存放一个字符的ASCII码 二进制文件:数据按其在内存中的存储形式原样存放 文件概述 文件缓冲区 ANSI C采用缓冲文件系统处理数据文件。 缓冲文件系统:系统自动为正在使用的文件开辟内存缓冲区,用于暂时存放文件的读写数据。 文件概述 文件类型指针 缓冲文件系统为每个将要使用的文件在内存开辟文件信息区,以便存放文件的基本信息; 系统使用名为FILE的结构体来描述文件的基本信息; FILE定义包含在stdio.h中,情况如下: 文件概述 文件类型指针 文件指针变量 FILE *fp; 用法 文件打开时,系统自动建立文件结构体,并返回指向它的指针,程序通过这个指针获得文件信息,访问文件。 文件关闭后,其对应的文件结构体被释放。 第8章 文件的使用 主要内容 文件概述 打开与关闭文件 顺序读写文件 随机读写文件 打开与关闭文件 C语言文件操作用过程 打开文件--文件读/写--关闭文件 系统自动打开和关闭三个标准文件 标准输入------键盘 stdin 标准输出------显示器 stdout 出错输出------显示器 stderr 打开文件(fopen函数) 形式:FILE *fopen(char *name, char *mode) 功能:按指定方式打开文件,返回指向文件结构体的指针(打开失败:NULL) 打开与关闭文件 文件的使用方式 例如: 打开与关闭文件 关闭文件(fclose函数) 形式:int fclose(FILE *fp) 功能 关闭fp指向的文件,返回(0:正常关闭,1:出错) 第8章 文件的使用 主要内容 文件概述 打开与关闭文件 顺序读写文件 随机读写文件 顺序读写文件 主要的文件读写函数 读写一个字符 读写一个字符串 格式化读写数据 二进制方式读写一组数据 读写一个字符 读一个字符 函数:int fgetc(FILE *fp) 功能:从fp指向的文件中读取一个字节(字符代码值) 返值:返回读到的代码值,若读到文件尾则为EOF。 顺序读写文件 写一个字符 函数:int fputc(int c, FILE *fp) 功能:把一字节(字符代码值)c写入fp指向的文件中。 返值:写入正常则返回c;否则返回EOF. 顺序读写文件 文件结束判断 函数:int feof(FILE *fp) 功能:判断fp指向的文件是否结束(到达文件末尾) 返值:若文件结束则返回1(真),否则返回0(假)。 顺序读写文件 读写一个字符串 读一个字符串 函数:char *fgets(char *s, int n, FILE *fp) 功能:从fp指向的文件读n-1个字符到s所指向的内存区域,并在最后加‘\0’,(若读入n-1个字符前遇换行符或文件尾(EOF)即结束)。 返值:返回读取字符串的首地址或NULL 写一个字符串 函数:int fputs(char *s,FILE *fp) 功能:把s所指向的内存区域的字符串写入fp指向的文件。 返值:返回写入的最后一个字符,出错则返回EOF。 顺序读写文件 例如:键盘读入字符串存入文件,再从文件读回显示. 顺序读写文件 格式化读写数据 写数据 int fprintf(FILE *fp,const char*format[,argument,…]) 读数据 int fscanf(FILE *fp,const char *format[,address,…]) 返值:若成功则返回写/读的数据个数;否则返回EOF. 顺序读写文件 二进制方式读写一组数据 读数据 size_t fread(void *buffer,size_t size, size_t count,FILE *fp) 写数据 size_t fwrite(void *buffer,size_t size, size_t count,FILE *fp) 返值:成功则返回读/写的块数;否则返回0。 说明 typedef unsigned size_t; buffer: 指向要输入/输出数据块的首地址的指针 size: 每个要读/写的数据块的大小(字节数) count: 要读/写的数据块的个数 fp: 要读/写的文件指针 例: 输入4个学生的数据,把他们存到文件中去。 第8章 文件的使用 主要内容 文件概述 打开与关闭文件 顺序读写文件 随机读写文件 随机读写文件 基本概念 文件位置指针:指向文件当前读写位置的指针 读写方式 顺序读写:位置指

文档评论(0)

1亿VIP精品文档

相关文档