计算机基础与Visual Basic程序设计(第二版)第十一章 文件_第1页
计算机基础与Visual Basic程序设计(第二版)第十一章 文件_第2页
计算机基础与Visual Basic程序设计(第二版)第十一章 文件_第3页
计算机基础与Visual Basic程序设计(第二版)第十一章 文件_第4页
计算机基础与Visual Basic程序设计(第二版)第十一章 文件_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

第 11章 数据文件 类及其结构; 开、读 /写、关闭; 开、读 /写、关闭; 本章内容及要求: 本章重点: 顺序文件的操作:打开、读 /写、关闭; 随机文件的操作 :打开、读 /写、关闭; 本章难点: 随机文件、二进制文件的操作 第 11章 数据文件 文件是存储在外部介质(如磁盘)上的以文件名标识的数据的集合。通常由一组存放在磁盘上的相关字节组成。当应用程序要访问文件时,必须自己决定文件中字节的意义(比如,表示字符、数据记录、整数、字符串等等)。 存储在磁盘上的文件称为磁盘文件,与计算机相连的设备称为设备文件。这些文件都不在计算机内,统称为外部文件。 一、文件及其结构 文件: 存储在外部介质上数据的集合。按名存取 磁盘文件是由数据记录组成 。记录是计算机处理数据的基本单位,它由一组具有共同属性相互关联的数据项组成。 学号 姓名 数学成绩 语文成绩 物理成绩 总分 数据项 文件的概念 记录 1 记录 2 记录 N 文件结束标志 二、文件分类 根据访问文件的方式将文件分成 3类: 顺序文件 随机文件 二进制文件 。 1 顺序文件 顺序文件( 普通的文本文件。顺序文件中的记录按顺序一个接一个地排列。读写文件存取记录时,都必须按记录顺序逐个进行。 一行一条记录(一项数据),记录可长可短,以“换行”字符为分隔符号。 #1 记录 1 #2 记录 2 #N 记录 N 2 随机文件 随机文件( 是可以按任意次序读写的文件,其中每个记录的长度必须相同。在这种文件结构中,每个记录都有其唯一的一个记录号,所以在读取数据时,只要知道记录号,便可以直接读取记录。 随机文件的文件结构 3 二进制文件 二进制文件( 字节的集合、它直接把二进制码存放在文件中。 除了没有数据类型或者记录长度的含义以外,它与随机访问很相似。 二进制访问模式是以字节数来定位数据,在程序中可以按任何方式组织和访问数据,对文件中各字节数据直接进行存取。 虽然这 3种文件访问的数据类型不同,但应用程序访问它们的步骤却相似: 使用 为文件指定一个文件号。对文件进行任何 I/必须经过这步操作。 从文件中读取部分或全部数据到变量中。 对变量中的数据进行处理。 将处理后的数据保存回文件中。 使用 果没有关闭文件,则会导致文件中部分或全部信息丢失。 文件的基本操作 打开文件 读出或写入 关闭文件 顺序文件的基本操作 在程序中对文件的操作,通常按 3个步骤进行: 一、顺序文件的打开与关闭 1. 打开文件 “文件名” 式 #文件号 录长度 (1) 模式 操作 操作 加到文件未尾 C: #1 (2) 文件号 1 511,可以用 (3) 记录长度 小于或等于 32767的整数,它指定数据缓冲区的大小。 例如,打开 C:写入数据,指定文件号为 #1。 例如: “C: #1 “C: #2 “C: #1 打开文件的真正含意 : (1)并不是把文件内容显示出来,而是读文件或显示文件内容的必经步骤; (2)打开文件并不一定只是为了读文件内容而打开,其实写文件或新建文件之前都要把对应的文件打开。 如何打开由用户任意指定的文件: (1)用打开 /另存为对话框; (2)用文件列表框 /目录列表框 /驱动器列表框 要注意 1. 顺序文件读操作 从现存文件中读入数据,应以顺序 开该文件。然后使用 语句、 语句和 )函数读入到程序变量中。 使用格式如下: 格式一: # 语句 #文件号 , 变量列表 把读出的每个数据项分别存放到所对应的变量,从文件中读出数据时,凡是遇到文件中的逗号、空格或回车符便认为是一个数据项的结束。 二、 顺序文件的读写操作 数 数将返回一个表示文件指针是否到达文件末尾的标志。如果到了文件末尾, 数返回1),否则返回 )。 从文件中读数据的常见循环方式: 件号 ) 读文件及其它语句 2:把文件文件 & & #1 ) #1 , a a #1 格式二: # 语句 #文件号 , 字符串变量 功能:从顺序文件中读取一整行字符到后面指定的字符串变量中。 例:把程序文件夹下面的文本文件 & & #1 ) #1 , s + s + 1 格式三: N , #文件号 ) 从指定文件中读取 为函数的返回值 例:把程序文件夹下面的文本文件 & & #1 ) , 1) #1 例:把程序文件夹下面的文本文件 c 1 & & #1 ) c= , #1) & c #1 2、 顺序文件的写操作 向文件写入内容使用 语句或 句 , 在程序中是数据输出 。 ( 1) 语法格式: # , 说明: 文件号为以写方式打开文件的文件号; 输出列表为用分号或逗号分隔的变量 、 常量 、 空格和定位函数序列 。 ( 2) 语法格式: #, 数据项之间插入 “ ,”, 并给字符数据加上双引号 。 三 、 关闭文件 句 使用格式如下: 文件号列表 其中: 文件号列表为可选项 , 如: #1, #2, #3, 如果省略 , 则将关闭 例如: #1 , #2 删除打开的 1号 、 2号文件 删除打开的全部文件 四 与读文件操作有关的几个函数 ( 1) 数 例如 , )返回 #1文件的长度 , 如果返回 0值 , 则表示该文件是一个空文件 。 ( 2) 数 于二进制文件 , 它将返回最近读写的一个字节的位置 。 ( 3) 数 随机文件 在文件中以顺序文件方式进行存取数据很方便也很常用,但是当需要大量查找或修改文件中的数据时会很困难,而这时采用随机文件方式存取数据就显得比较方便。 随机文件的每一个数据项都有相同的长度,它的数据项通常称做记录。随机文件是以记录为单位的,每条记录都被赋予了记录号以便查找。应用程序可以根据记录号直接读取随机文件中的任意记录,而无须由前至后逐个读取记录。 对随机文件的存取是以记录为单位进行的,每个记录包括一个或多个字段。具有一个字段的记录对应于任一标准类型,比如整数或定长字符串。具有多个字段的记录对应于用户自定义类型。 1、 声明记录类型变量 在打开一个文件进行随机访问之前,应定义一个类型,该类型对应于该文件包含或将包含的记录。 语法格式为: 自定义类型名 元素名 元素名 例如,声明一个学生自定义类型。 2 学号,宽度为 2字节 8 姓名,宽度为 8字节 成绩,宽度为 2字节 随机文件 在定义与记录对应的类型以后,应接着声明程序需要的任何其他变量,用来处理作为随机访问而打开的文件。如: , 定义记录变量 随机文件的操作 一、打开 格式: “文件名” #文件号 录长度 二、读操作 #文件号 , 记录号 ,变量名 将一个已打开的磁盘文件的一条记录的内容读入一个变量之中。 忽略记录号,则读出当前记录后的那一条记录。 三、写操作 #文件号 , 记录号 ,变量名 将一个变量的数据写入磁盘文件中,将一个记录变量的内容写到指定的记录位置处。忽略记录号,则表示在当前记录后的位置插入一条记录。 二进制文件是一个字节流,文件系统并不解释各字节的意义,解释工作由具体的应用程序完成。 以二进制方式访问文件有下述特点: 可以直接访问文件中的所有数据。 由应用程序根据需要解释数据的意义。 访问文件的语句不更改原始数据的所有内容。 二进制文件每一次读写是以字节为单位对数据进行访问操作的,它允许用户读写或修改文件中的任何字节信息。当把二进制数据写入文件中时,使用 不是 二进制型数据可能无法正确地存储在 当要保持文件的尺寸尽量小时,应使用二进制文件。 进制文件 一、二进制文件的打开 文件名 #文件号 二、二进制文件的写操作 #文件号 , 位置 ,变量名 写入长度等于变量长度的数据。 三、二进制文件的读操作 #文件号 , 位置 ,变量名 从指定位置开始读出长度等于变量长度的数据存入变量中,数据读出后移动变量长度位置,如果忽略位置,则表示从文件指针所指的位置开始读出数据,数据读出后移动变量长度位置。 进制文件 例题 文件复制 c # 1 打开源文件 # 2 打开目标文件 ) #1 , , c 从源文件读出一个字节 #2 , , c 将一个字节写入目标文件 与文件系统相关的语句 句 格式: 能:改变当前目录。 例如: D:2. 句 格式: 功能:改变当前驱动器 说明:如果 ,则当前驱动器将不会改变;如果 字 符,则 3. 句 格式: 能:创建一个新的目录。 4. 句 格式: 功能:删除一个存在的目录 说明:只能删除空目录。 格式: , 能:复制一个文件。 说明: 句 格式: 能:重新命名一个文件或目录。 说明: (1) (2) 不能使用统配符“ *”和“ ?”,不能对一个已打开的文件上使用 格式: 功能:删除文件。 说明: *”和 “ ?”。 例如: *文件系统控件 种可直接浏览系统目录结构和文件的控件: 驱动器列表框、目录列表框、文件列表框。 驱动器列表框 文件列表框 目录列表框 驱动器列表框( 驱动器列表框( 控件,通常只显示当前驱动器名称,单击向下箭头,就会下拉出计算机拥有的所有磁盘驱动器,供用户选择。 1重要属性 驱动器列表框控件最重要和常用的属性 , 该属性在设计时不可用 。 使用格式: = 例如: D:” 文件系统控件 2重要事件 在程序运行时 , 当选择一个新的驱动器或通过代码改变 目录列表框( 目录列表框( 控件用来当前驱动器目录结构及当前目录下的所有子文件夹(子目录)。供用户选择其中一个目录为当前目录。 文件系统控件 1 常用属性 目录列表框控件的最常用的属性 , 用于返回或设置当前路径 。 该属性在设计时是不可用的 。 使用格式: = 其中: 象表达式 , 其值是目录列表框的对象名 。 :用来表示路径名的字符串表达式。 例如, C: 缺省值是当前路径。 说明: 如, 网络计算机名 共享目录名 文件系统控件 2 重要事件 与驱动器列表框一样,在程序运行时,每当改变当前目录,即目录列表框的 要触发其 文件系统控件 文件列表框( 控件用来显示 性指定的目录中的文件定位并列举出来。该控件用来显示所选择文件类型的文件列表。 文件列表框( 1 常用属性 ( 1) 用于返回和设置文件列表框当前目录,设计时不可用。 说明:当 引发一个 文件系统控件 此条件也可改为: 3 ( 2) 用于返回或设置被选定文件的文件名 , 设计时不可用 。 说明: 例如:要从文件列表框 ( 中获得全路径的文件名 用下面的程序代码: ) = & 件系统控件 ( 3) 用于返回或设置文件列表框所显示的文件类型 。 可在设计状态设置或在程序运

温馨提示

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

评论

0/150

提交评论