1、第第 9 章章 文件文件 本章学习目标本章学习目标文件的基本概念和分类文件的基本概念和分类1 1顺序文件的基本操作顺序文件的基本操作2 2随机文件的基本操作随机文件的基本操作3 3文件系统控件的使用文件系统控件的使用 4 4 所谓文件,是指存放在计算机外部介质(如磁盘)上的数据的集合。通常情况下,计算机处理的大量数据都是以文件的形式存放在外部介质上,操作系统也是以文件为单位对数据进行管理。如果想访问存放在外部介质上的数据,必须先按文件名查找所指定的文件,然后再从该文件中读取数据。要向外部介质存储数据也必须先建立一个文件,才能向它输出数据。VB具有较强的文件处理能力。它既可以直接读写文件,同时又
2、提供了大量的文件管理的语句和函数以及用于制作文件系统的控件。用户可以使用这些手段开发出功能强大的应用程序。文件的分类方法很多。按照文件的数据编码方式分为ASCII码文件和二进制文件;按照文件的特征属性分为系统文件、隐含文件、只读文件、普通文件、存档文件;按照文件的数据性质分为程序文件和数据文件;按照文件的存取方式及组成结构可分为顺序文件和随机文件。本章主要讨论顺序文件和随机文件的操作、管理。9.1 顺序文件顺序文件9.1.1 9.1.1 顺序文件的读写操作顺序文件的读写操作1 顺序文件的基本概念2 顺序文件的操作特点3 读顺序文件用到的函数和语句:Input#Input#语句、语句、Line
3、Input#Line Input#语句、语句、InputInput函数函数4 写顺序文件用到的语句:Print#Print#语句、语句、Write#Write#语句语句 5 顺序文件的建立与打开 格式:格式:Open Open 文件名文件名 For For 模式模式 As#As#文件号文件号 Len=Len=记录长度记录长度 6 顺序文件的关闭 格式:格式:Close#Close#文件号文件号 9.1.2 案例实践案例实践 案例案例1 1:通过键盘输入数据,创建名为:通过键盘输入数据,创建名为Stu.datStu.dat的顺序的顺序 文件。内容包括学号、姓名、性别、语文、数学、文件。内容包括学
4、号、姓名、性别、语文、数学、英语等学生成绩。英语等学生成绩。【案例分析案例分析】:以追加方式Append建立并打开顺序文件Stu.dat,用Write语句将数据内容写入该文件中。【操作步骤操作步骤】:1、界面设计:新建一窗体Form1,在窗体上添加一个框架,五个文本框,六个标签,两个单选钮并添加两个命令按钮等控件对象。设置各控件属性。2、编写代码 3、程序运行界面:如图91所示。9.1.2 案例实践案例实践 案例案例2 2:从:从Stu.datStu.dat 中读入并显示全部学生成绩数据,将其中中读入并显示全部学生成绩数据,将其中需要补考的学生数据存入一个新的顺序文件需要补考的学生数据存入一个
5、新的顺序文件Stu1.datStu1.dat中。中。【案例分析案例分析】:以Input方式打开顺序文件Stu.dat,用Input语句将数据内容读入记录数组中,然后选出需要补考的学生数据,并写入新顺序文件Stu1.dat中。【操作步骤操作步骤】:1、界面设计:新建一窗体Form1,在窗体上添加一个列表框及两个命令按钮等控件对象。设置各控件属性。2、编写代码 3、程序运行界面:如图92所示。9.1.3 课堂练习课堂练习练习练习1 1:从:从Stu.datStu.dat中读入全部学生成绩数据,将其中获奖学中读入全部学生成绩数据,将其中获奖学金的学生数据存入一个新文件金的学生数据存入一个新文件Stu
6、2.datStu2.dat中。获奖学金的中。获奖学金的条件是:每门课程成绩均在条件是:每门课程成绩均在8585分以上或课程总分在分以上或课程总分在270270分以上者。分以上者。【案例分析案例分析】:以Input方式打开顺序文件Stu.dat,用Input语句将数据内容读入记录数组中。然后选出获奖学金的学生数据,并写入新文件Stu2.dat中。【操作步骤操作步骤】:1、界面设计:新建一窗体Form1,在窗体上添加一个列表框及两个命令按钮等控件对象。设置各控件属性。2、编写代码 3、程序运行界面:如图93所示。9.1.3 课堂练习课堂练习练习练习2 2:从:从Stu2.datStu2.dat中读
7、入数据,在列表框中显示获奖学金中读入数据,在列表框中显示获奖学金 学生的各科成绩。学生的各科成绩。【案例分析案例分析】:以:以InputInput方式打开顺序文件方式打开顺序文件Stu2.datStu2.dat,用,用 InputInput语句将数据内容读入记录数组中。并语句将数据内容读入记录数组中。并 将获奖学金的学生数据显示在列表框中。将获奖学金的学生数据显示在列表框中。【操作步骤操作步骤】:1 1、界面设计:新建一窗体、界面设计:新建一窗体Form1Form1,在窗体上添加一个列表,在窗体上添加一个列表框及一个命令按钮等控件对象。设置各控件属性。框及一个命令按钮等控件对象。设置各控件属性
8、。2 2、编写代码、编写代码 3 3、程序运行界面、程序运行界面:如图94所示。返回9.2 随机文件随机文件9.2.1 9.2.1 随机文件的读写操作随机文件的读写操作1 随机文件的基本概念2 随机文件的操作特点3 读随机文件用到的函数和语句:Get#Get#语句、语句、LOFLOF函数、函数、FileLenFileLen函数。函数。4 写随机文件用到的语句:Put#Put#语句。语句。5 随机文件的建立与打开 格式:格式:Open Open 文件名文件名 For Random As#For Random As#文件号文件号 Len=Len=记录长度记录长度 6 随机文件的关闭 格式:格式:C
9、lose#Close#文件号文件号 9.2.2 案例实践案例实践 案例案例1 1:编写应用程序,功能如下:编写应用程序,功能如下:1、建立一个随机文件,管理某单位的职工情况。其中每个记录由工作证号、姓名、性别、工资、工作日期组成,可以向此文件添加新记录。2、可以修改、删除记录。3、可以按记录浏览所有职工的情况。4、可以按姓名查找,并显示找到的记录。5、可以按工作证号查找,并显示找到的记录。【案例说明案例说明】:因为使用随机文件,所以应先定义一个记录类型worker,它包含5个字段,用来说明工作证号、姓名、性别、工资、工作日期,然后定义一个记录变量da。【案例分析案例分析】:建立并打开随机文件w
10、orker.dat,用Get语句将数据内容读出,并传送到记录变量da中,调用显示记录的Sub过程。【操作步骤操作步骤】:1、界面设计:新建一窗体Form1,在窗体上添加四个框架,四个文本框,五个 标签,两个单选钮并添加三个命令按钮数组等控件对象。设置各控件属性。2、编写代码 3、程序运行界面:如图95所示。9.2.3 课堂练习课堂练习练习练习1 1:使用随机文件建立一个通讯录。文件名为:使用随机文件建立一个通讯录。文件名为Contact.datContact.dat,每个记,每个记录包括:姓名,电话和录包括:姓名,电话和E-mailE-mail地址。地址。【案例说明案例说明】:文件保存如下三个
11、记录:LiM WangH ChenDong38408989 【操作步骤操作步骤】:1、建立一个新工程。2、在窗体的“通用”、“声明”部分中添加ContactRecord声明。3、在窗体的Load事件过程中添加代码。4、该程序运行后在D盘建立包含三个记录的文件Contact.dat。可用记事本程序打开此文件,观察其结果。9.2.3 课堂练习课堂练习练习练习2 2:将上例建立的文件:将上例建立的文件Contact.datContact.dat中的第中的第3 3个记个记录的录的E-mailE-mail地址改为:地址改为:。【操作说明操作说明】:要修改第3个记录的E-mail地址,必须要整个重写第3个
12、记录。【操作步骤操作步骤】:1、建立一个新工程。2、在窗体的“通用”、“声明”部分中添加ContactRecord声明。3、在窗体的Load事件过程中添加代码。4、该程序运行后,可用记事本程序打开此文件,观察其结果。返回9.3 文件系统控件文件系统控件 文件系统控件包括驱动器列表框、目录列表框和文件列表框三种控件。用户可以选用这三种控件,建立文件管理器界面。9.3.1 9.3.1 文件系统控件概述及属性文件系统控件概述及属性 1 1、驱动器列表框、驱动器列表框 驱动器列表框(DriveListBox)是一种下拉式列表框,平时只显示当前驱动器名称,单击其右边的箭头按钮,就会列出该计算机所拥有的所
13、有磁盘驱动器,供用户选择。驱动器列表框有一个Drive属性,该属性不能在设计状态时设置,只能在程序中被引用或设置。2 2、目录列表框、目录列表框 目录列表框(DirListBox)显示当前驱动器的目录结构及当前目录下的所有子目录,供用户选择其中的某个目录作为当前目录。在目录列表框中,如果用鼠标双击某个目录,就会显示出该目录下的所有子目录。目录列表框只能显示出当前驱动器下的子目录。如果要显示其他驱动器下的目录结构,则必须重新设置目录列表框上的Path属性,该属性不能在设计状态时设置,只能在程序中被引用或设置。9.3 文件系统控件文件系统控件 3 3、文件列表框、文件列表框 文件列表框(FileL
14、istBox)是一种列表框,显示当前驱动器中当前目录下的文件目录清单。文件列表框也有Path属性,表示列表框中显示的文件所有的路径。每次重设Path属性都会引发PathChange事件。4 4、驱动器列表框的、驱动器列表框的DriveDrive属性属性 格式:对象名称.Drive=drive 功能:在运行时返回或设置所选定的驱动器名称。说明:“对象名称”参数是驱动器列表框名称,drive参数是驱动器名称。注意:每次重新设置Drive属性都会引发Change事件。5 5、目录列表框的、目录列表框的PathPath属性属性 格式:对象名称.Path=pathname 功能:用来返回或设置当前路径。
15、它适用于目录列表框和文件列表框。说明:“对象名称”参数是指目录列框或文件列表框,pathname参数是一个路径名字符串。注意:每次重新设置Drive属性都会引发Change事件。9.3 文件系统控件文件系统控件 6 6、文件列表框的、文件列表框的PatternPattern属性属性 该属性值为具有通配符的文件名字符串,既可以在设计时设置,也可以在程序中改变。格式:对象名称.Pattern=value 功能:返回或设置文件列表框所显示的文件类型。默认值为显示所有文件。说明:“对象名称”参数是指文件列表框的名称。Value参数是一个文件名字符串。注意:每次重新设置Pattern属性都会引发Patt
16、ernChange事件。7 7、文件列表框的、文件列表框的FileNameFileName属性属性 该属性值在设计状态不能使用,只能在程序中使用。格式:对象名称.FileName=pathname 功能:返回或设置被选定文件的文件名和路径。说明:“对象名称”参数是指文件列表框的名称。Pathname是一个指定文件名及其路径的字符串。引用FileName时,仅仅返回被选定文件的文件名,此时其值相当于List(ListIndex)。需要用Path属性才能得到其路径,但设置时文件名之前可以带路径。9.3.2 案例实践案例实践 案例案例1 1:设计简单的文本编辑器程序。:设计简单的文本编辑器程序。【案
17、例说明案例说明】:1、通过“文件系统控件”,选择文件的路径,也可以输入文件的路径。2、可以读取所选择的文件,也可以将文本框中编辑的文件存到磁盘上。【操作步骤操作步骤】:1、界面设计与设置对象属性:新建一窗体Form1,在窗体上添加四个框架Frame1-Frame4,一个文本框Text1,一个命令按钮数组Command1(0)-Command1(1)等控件对象。四个框架中分别增加控件:Frame1中增加一个文本框Text2。Frame2中增加一个文件列表框File1。Frame3中增加一个组合框Combo1。Frame4 中增加一个驱动器列表框Drive1和一个目录列表框Dir1。设置对象属性。2、编写代码 3、程序运行界面:如图96所示。返回
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。