第12讲数据文件处理技术.ppt

  1. 1、本文档共78页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第12讲数据文件处理技术

《程序设计》-2005年秋 第12讲 数据文件处理技术 周水庚 2005年12月14日 C文件概述 文件类型和文件类型指针变量 文件打开和关闭库函数 文件处理程序结构和常用文件库函数 文件程序设计实例 C文件概述 文件类型和文件类型指针变量 文件打开和关闭库函数 文件处理程序结构和常用文件库函数 文件程序设计实例 C文件概述 将数据存储在计算机外部存储介质中,如磁带、磁盘等。计算机操作系统将存储在外部存贮介质中的数据以数据流的形式来组织 每个独立的数据流称作文件,每个文件有一个名字。为便于管理文件,操作系统维持一个呈层次状的目录结构,每个文件都被登录在某一目录下,文件用文件名 包括文件的目录路径 来标识 也将从键盘输入的数据流和向显示屏或行印机输出的数据流称作文件 在C语言中,文件中的数据流的组织形式有两种: 数据流由一个个字符组成,称为正文文件 数据流由二进制字节代码组成,称为二进制文件 C文件概述 正文文件 文件中数据是字符,每个字符以ASCII 代码存储,占一个字节。存储数值数据要占较多的存储空间,输入输出时因内存和外存的存储形式不一致,还要进行内外表示形式之间的转换。正文文件数据流是字符,能让程序对文件作逐个字符处理和文件中的数据能供人阅读。 二进制文件 文件中的数据按其在内存中的存储形式存储在文件中。存储数值数据只占其内部表示所需的字节数;用二进制形式存储数值数据可以节省外存空间,并免去数据内外表示形式之间的转换;用于程序与程序或程序与设备之间传递成批数据信息。 C文件概述 程序与文件交换数据的实现过程 设备的读写操作是在操作系统的管理和控制下进行 操作系统为能高效地管理和控制设备,给程序正在使用的每个文件在内存中开辟一个适当大小的缓冲区 程序要从文件读入一些信息时,系统先一次性地读入足够多的信息存于缓冲区中,供程序一部分一部分地使用; 程序要写信息到文件时,也先把信息写到缓冲区中,待缓冲区写满或写文件结束时,才把缓冲区中的内容写到文件中 C文件概述 程序要读取文件中的数据,首先打开要读的文件,然后才能从该文件读取数据,并在使用结束时,及时关闭文件。程序要向文件写入数据,也是先打开文件 可能包括建立一个新文件 ,然后向文件输出数据,最后关闭文件 C语言本身未提供有关文件操作的输入输出语句,对文件的打开关闭和读写操作都用系统提供的库函数来实现。程序可用它们对文件作各种复杂的处理 C文件概述 文件类型和文件类型指针变量 文件打开和关闭库函数 文件处理程序结构和常用文件库函数 文件程序设计实例 文件类型和文件类型指针变量 文件类型 FILE 操作系统除为文件开辟缓冲区外,还为每个被使用的文件在内存中开辟另一个存储区,用于存放有关对文件进行操作所需的控制信息,如文件名、文件读写状态、文件缓冲区大小和位置、当前读写位置等 C系统将这些信息存储在一个结构变量中,这种结构的类型由系统预定义,取名FILE,习惯称文件类型。不同系统的文件类型所含内容也不全相同。读者可查阅自已使用的C系统的 stdio.h 文件,在该文件中有FILE的定义 C文件概述 文件类型和文件类型指针变量 文件打开和关闭库函数 文件处理程序结构和常用文件库函数 文件程序设计实例 文件打开库函数fopen 读写文件之前先打开文件,使用库函数fopen 调用函数fopen 的一般形式为: fopen 文件名, 使用方式 其中文件名 可能还包括目录路径 为字符串表达式。使用方式也是一个字符串,用来指明文件的读写方式 见表8-1 。函数fopen 将返回一个存放文件控制信息结构的指针,该文件的有关控制信息就将存放在该结构中,供以后读写文件操作之用。程序应将调用函数fopen 返回的指针值赋给某个文件指针变量中保存 如语句 fp fopen \\usr4\\smp.dat, r ; 读方式打开根目录下的usr4子目录中的 smp.dat 文件 文件打开库函数fopen 调用函数fopen 时,可能会不能打开 如读方式下打开不存在的文件 在写方式下,外部存贮介质已无剩余的自由空间 或外设故障,或超过系统能同时打开的文件数 文件不能打开时,函数fopen 将返回一个空指针值NULL。考虑到文件不能正常打开情况,常用C代码描述打开文件如 if fp fopen filename, r NULL printf “Can not open %s file.\n”, filename ; return; 以上代码以读方式打开一个文件,其中 filename 是某文件名。在调用函数fopen 后立即检查打开是否成功,如果打开不成功,就输出该文件不能打开后返回 文件打开库函数fopen fopen 的使用方式参数说明 1 “r” 方式

文档评论(0)

sunhao111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档