第 6 章 文件操作

54
6 6 第第第第 第第第第 第第第第第第 6.1 第第第第第第 6.2 第第第第 6.3 第第 6.4 第第第第 6.5

description

6.1. 6.2. 6.3. 6.4. 6.5. 文件管理控件. 文件读写操作. 综合案例. 实训. 本章小结. 第 6 章 文件操作. 6.1 文件管理控件. 所谓的文件是指记录外部介质上的数据的集合,通常存放在磁盘上,并且每个文件都有一个文件名。一个完整的文件名包括主文件名和扩展名两部分,主文件名和扩展名以圆点相间,主文件名是文件的“名字”,扩展名决定着文件的类型,如,“ Form1.frm” ,其中“ Form1” 为主文件名,“ .frm” 为扩展名,表示该文件为窗体文件。. - PowerPoint PPT Presentation

Transcript of 第 6 章 文件操作

Page 1: 第 6 章  文件操作

第第 66 章 文件操作章 文件操作文件管理控件 6.1

文件读写操作 6.2

综合案例6.3

实训6.4

本章小结6.5

Page 2: 第 6 章  文件操作

6.16.1 文件管理控件 文件管理控件 所谓的文件是指记录外部介质上的数据的集合,通常存放在磁盘上,并且每个文件都有一个文件名。一个完整的文件名包括主文件名和扩展名两部分,主文件名和扩展名以圆点相间,主文件名是文件的“名字”,扩展名决定着文件的类型,如,“ Form1.frm” ,其中“ Form1” 为主文件名,“ .frm” 为扩展名,表示该文件为窗体文件。

Page 3: 第 6 章  文件操作

由于每个文件在计算机上都有一个存储的地址,因此要访问或保存某个文件必须指明该文件的详细路径,格式如下:磁盘驱动器名: \ 文件夹 1\ 文件夹 2\…\ 文件名图 6-1 文件控件 其中“磁盘驱动器名”用来指定文件所在的磁盘,“ \ 文件夹 1\文件夹 2\…\” 用来指明文件所在的详细位置。例如,假设访问文件“ Form1.frm” 所需的路径为 E : \ 资料 \vb 资料 \vb 代码 \Form1.frm ,其中 E 表示为 E 盘,“资料”、“ vb 资料”、“ vb 代码”为文件夹名。与此相对应的, Visual Basic 6.0 为用户提供了 3 个常用的控件:驱动器列表控件、文件夹列表控件和文件名列表控件,如图 6-1 所示。

文件列表控件 文件夹列表控件

驱动器列表控件

图 6-1 文件控件

Page 4: 第 6 章  文件操作

【案例【案例 6-16-1 】 磁盘文件显示器的设计】 磁盘文件显示器的设计 设计图 6-2 所示的磁盘文件显示器,先在驱动器列表中选中磁盘名,然后在文件列表框中双击某个文件夹,该文件夹中的所有可执行文件便会显示在文件列表框中,如图 6-2 所示。在文件列表框中双击某个可执行文件,便可以直接运行该程序。

驱动器列表框控件用于显示计算机存在的磁盘名,文件列表框控件用于显示文件夹,而文件列表框则用于显示文件,这 3个控件既可以单独使用,也可以组合起来使用,本案例中我们将学习如何使用这 3 个控件来显示磁盘上的文件。

文件夹列表控件 显示文件夹

文件列表控件 显示文件

驱动器列表控件

显示驱动器

图 6-2 用 3 个控件来管理文件

Page 5: 第 6 章  文件操作

【案例解析】1 .界面设计 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材2 .显示驱动器列表 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材

Page 6: 第 6 章  文件操作

【知识扩展】( 1 )驱动器列表控件是 1 个下拉式组合框,用于选择驱动器。驱动器列表控件除了一些常用共有属性之外,还有1 个特殊的属性:【 Drive 】属性。该属性用于设置或返回要操作的驱动器,用户可以通过设置该属性来改变默认的驱动器。由于【 Drive 】属性不显示在属性窗口,因此只能通过代码来设置,具体语法结构如下:文件列表控件名 .Drive = " 驱动器名 "

例如在本案例中,我们便是通过代码: Drive1.Drive = "D" ,来改变默认的驱动器。

Page 7: 第 6 章  文件操作

【知识扩展】( 2 )在设置“驱动器名”时,不能将它设为不存在的驱动器名,例如,某计算机只有 D , E , F 3 个驱动器,如果将【 Drive 】属性设为 C ,程序在运行时便会出错。另外在设置【 Drive 】属性时,驱动器名是不分大小写的,即“ D” 和“ d” 是等价的。

Page 8: 第 6 章  文件操作

3 .显示文件夹列表 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材 ( 5 )操作步骤见教材

Page 9: 第 6 章  文件操作

( 1 )由于驱动器列表框是 1 个下拉式的组合框,因此和组合框控件一样, Change 事件是驱动器列表框控件最常用的事件,但它不能响应任何鼠标事件。当驱动器列表框中的驱动器发生改变时,便会激发该事件。( 2 )在文件夹列表控件中,双击某个文件夹便可以选中该文件夹,并以图标的形式显示该文件夹,表示该文件夹被打开。当前被选中的文件夹,被文件夹列表控件的【 Path 】属性记录下来。【 Path 】属性不仅可以用来返回当前被选中的文件夹,而且还可以用于设置当前被选中的文件夹,但只能通过代码来设置【 Path 】属性。例如,本案例中的代码 Dir1.Path = Drive1.Drive ,便是用来设置文件夹列表的当前文件夹。

Page 10: 第 6 章  文件操作

4 .显示文件 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材

Page 11: 第 6 章  文件操作

【知识扩展】( 1 )文件列表控件用于显示当前路径下的部分或所有文件,常用属性如下。 【 Path 】属性功能:返回或设置所要显示文件的详细路径。说明:在用文件名列表控件显示文件时,必须先为所显示的文件指定详细的路径,但只能通过在代码中改变【 Path 】属性值来指定文件的路径。

Page 12: 第 6 章  文件操作

【知识扩展】 【 Pattern 】属性功能:返回或设置所要显示文件的类型或特定的文件。说明:默认值为“ *.*” ,表示显示全部的各种类型的文件。设置【 Pattern 】属性时,必须按文件命名的形式为其赋值,既要给出文件的主文件名,还要给出文件的扩展名,但可以含有通配符“ *” 或“?”。在设置【 Pattern 】属性后,文件名列表框中只显示与【 Pattern 】属性相符的文件。另外【 Pattern 】属性还可以设置为多个值,但每个值之间必须以分号相间。读者不妨将本案例中的【 Pattern 】属性设为“ *.frm;*.vbp” ,然后运行程序,看看有什么效果。

Page 13: 第 6 章  文件操作

【知识扩展】( 2 ) Change 事件是文件夹列表控件最常用事件,但只有在文件夹列表框中双击某一列表项后才会激发 Change事件; Click 事件是文件名列表框控件最常用事件,在文件名列表框中单击某个文件名便会激发该事件。如果双击某个文件名,便会激发 DblClick 事件。( 3 )在文件名列表框控件中单击某个文件,该文件被选中,文件名由文件名列表框控件的【 FileName 】属性记录,例如在本案例中,被选中的文件便是通过【 FileName 】属性得到,然后显示在窗体的标题栏上。

Page 14: 第 6 章  文件操作

【知识扩展】【 FileName 】属性除了可以返回文件列表控件中被选中的文件之外,还可以用来设置所要显示的文件的类型,但【 FileName 】属性只能通过代码来设置。例如,如果将【 FileName 】属性设为了如下形式File1.FileName = "*.frm"

则文件列表控件中只显示扩展名为 .frm 的文件。

Page 15: 第 6 章  文件操作

【案例小结】 驱动器列表控件、文件夹列表控件和文件名列表控件是 Visual Basic 6.0 为用户提供的 3 个专用文件控件,这 3 个控件既可以单独使用,也可以组合起来使用。驱动器列表控件、文件夹列表控件常用【 Path 】属性来指定文件的路径,而文件名列表控件被选中的文件由【 FileName 】属性返回。在驱动器列表框控件中单击某个列表项时,便会激发驱动器列表框控件常用事件 Change 事件;在文件夹列表框中双击某个列表项,便会激发文件夹列表框常用事件 Change 事件;在文件名列表控件中单击某个列表项,便会激发文件名列表控件常用事件 Click 事件,双击某个列表项,便会激发 DblClick 事件。

Page 16: 第 6 章  文件操作

6.2 6.2 文件读写操作文件读写操作 字符是构成文件的最基本单位,一个汉字或一个英文字母都可看成是一个字符。字段是由若干个字符组成的,用来表示某一项数据,并且这些字符不能拆开,例如,一个学生的姓名,便是一个字段。若干相关字段的组合便构成了记录。例如,在如下所示的学生的信息管理文件中,每一行便是一条记录,每个记录由学号、姓名、班级和专业 4 个相关的字段组成,而每个字段,又是由若干个字符所组成。学号 姓名 班级 专业2001001张三 管理 2001 工商管理2001002李四 管理 2001 市场营销… … … …

2001080 王小二 计算机 2002 计算机

Page 17: 第 6 章  文件操作

依据不同的分类标准,可将文件分为各种不同的类别,如按文件的性质可将文件分为数据文件和程序文件;按文件是否可直接运行,可将文件分为可执行文件和非可执行文件等。在 Visual Basic 6.0 中,按访问方式的不同,将文件分为顺序文件、随机文件和二进制文件 3 种类型。文件的类型不同,其读写操作所使用的方法也不同 。

Page 18: 第 6 章  文件操作

【案例【案例 6-26-2】 文本文件读写操作程序的设计】 文本文件读写操作程序的设计 设计图 6-5 所示的简单文本编辑器,选择【文件】 / 【打开】命令,弹出图 6-6 所示的【打开】对话框,在文件列表框中选中文件后,单击按钮,文本文件中的内容便会显示在文本框中;在文本框中输入文字之后,选择【文件】 / 【保存】命令,弹出图 6-7 所示的【另存为】对话框,输入文件名后,单击按钮,便将文本框中输入的内容保存到文件中。

图 6-5 文本编辑器 图 6-6 【打开】对话框 图 6-7 【另存为】对话框 顺序文件中的数据通常是以行为单位的,对于顺序类文件, Visual Basic6.0 提供了多种写入和读出数据的函数或语句,在本案例中,我们将学习如何使用这些函数或语句来读写顺序文件。

Page 19: 第 6 章  文件操作

【案例解析】1 .界面设计 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材 ( 5 )操作步骤见教材 ( 6 )操作步骤见教材 ( 7 )操作步骤见教材 ( 8 )操作步骤见教材

Page 20: 第 6 章  文件操作

通用对话框控件的【 Filter 】属性用来返回或设置文件过滤器,由描述信息和通配符两部分组成,中间用“ |” 相连,如第( 8 )步中,【 Filter 】属性为“文本文件 (*.txt)|*.txt” ,其中“文本文件 (*.txt)” 为描述信息,“ *.txt” 为通配符,中间以“ |” 相隔。除了可通过设置【 Filter 】属性来显示某一类型的文件之外,也可以通过【 Filter 】属性来显示几种类型的文件,但在每种类型文件之间必须以“ |” 相隔。例如,将【 Filter 】属性设为“文本文件 (*.txt)|*.txt| 窗体文件 (*.frm)|*.frm” ,则文件列表框中除了显示扩展名为 .txt 的文本文件,还显示扩展名为 .frm 的窗体文件。

Page 21: 第 6 章  文件操作

2 .实现打开(读)文件功能 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材

Page 22: 第 6 章  文件操作

【知识扩展】( 1 )当文件为顺序文件时,如文本文件,可以使用 Line Input#语句来读取文件中的一行数据,具体语法结构如下:Line Input # filenumber,varname

其中参数 filenumber 为必选参数,对应于用 Open 语句打开文件时所指定的文件号;参数 varname 为必选参数,用来保存从文件中读出的数据。例如,在本案例中,便是使用 Line Input # 语句一行一行地读取文件(文件号为 1 )中的数据,并显示在文本框中,直到文件的最后一行。

Page 23: 第 6 章  文件操作

【知识扩展】( 2 )除了可以使用 Line Input # 语句来读取顺序文件中的数据之外,还可以使用 Input函数或 Input# 语句来读取顺序文件中的数据。使用 Input函数来读取文件数据的语法结构为字符串变量名= Input(number,[#]filenumber)

其中参数 number 为必选参数,用于指定要读取的长度;参数 filenumber为必选参数,对应于用 Open 语句打开文件时所指定的文件号。使用 Input# 语句来读取文件数据的语法结构为Input # filenumber,varlist

其中参数 filenumber 为必选参数,对应于用 Open 语句打开文件时所指定的文件号;参数 varlist 为必选参数,用来保存从文件中读出的数据,变量之间以逗号相间。

Page 24: 第 6 章  文件操作

【知识扩展】( 1 )无论何种类型的文件,在对文件进行读写操作之前,首先必须使用 Open 语句将文件打开,最简单的语法结构如下:Open filename For mode As [#]filenumber

各参数的说明如表 6-2 所示。如果要读取文件数据,则必须以 Input方式打开文件,例如;在案例中,在读出文件中数据之前,都以 Input方式打开文件如果要写入数据到文件中,则必须以 Output 或 Append方式打开文件,例如,在案例中,在保存数据之前,便是以 Output方式打开文件。在对文件进行读写操作之后,必须使用 Close 语句关闭已打开的文件,具体语法结构如下:Close [filenumberlist]

其中参数 filenumberlist 为可选参数,其值为一个或多个有效的文件号。当 filenumberlist 为多个文件号,必须以逗号相间,即 # 文件号 ,# 文件号 ,…… 。如果省略参数 filenumberlist ,则关闭用 Open 语句打开的所有文件。

Page 25: 第 6 章  文件操作

参 数 说 明filename 必选参数,为字符串表达式,用于指定文件名,文件名还可以包括文件的详细路径

mode

必选参数,用于指定文件打开方式,可取 Append(附加方式)、 Binary (二进制方式)、 Input (读入方式)、 Output (输出方式)、 Random (随机方式) 等值,如果未指定存取方式,则以 Random(随机)方式打开文件

filenumber

必选参数,其值为一个有效的文件号,取值范围为 1~511 。使用 FreeFile 函数可得到下一个可用的文件号

表 6-2 Open 语句的参数说明

Page 26: 第 6 章  文件操作

【知识扩展】( 2 )向顺序文件中写入数据,可以使用 Print 语句来完成,具体语法结构如下:Print #filenumber, printlist

其中参数 filenumber 为必选参数,对应于用 Open 语句打开文件时所指定的文件号;参数 printlist 为可选参数,为将要被写入文件的数据列表。例如,在本案例中,我们通过代码 Print #1, txtText.text ,将文本框中的文字写入到文件号为 1 的文件中。( 3 )除了可以用 Print 语句向顺序文件中写入数据之外,还可以用 Write#语句向顺序文件中写入数据,具体语法结构如下:Write #filenumber, printlist

各参数的说明和 Print#语句一样。另外用 Print#语句写入的数据一般用 Line Input#或 Input 语句读出,而用 Write#语句写入的数据通常用 Input#语句读出。

Page 27: 第 6 章  文件操作

( 4 )在 Visual Basic 6.0 ,除了在本案例中已用到的文件操作语句外(如 Open , Close 等语句),还有以下常用文件操作语句或函数。 EOF函数EOF函数返回一个布尔型或逻辑型的数据,用于测试是否已经到达文件结束部分。语法结构如下:EOF(filenumber)

其中参数 filenumber 为必选参数,对应于用 Open 语句打开文件时所设的文件号。只有到达文件的结尾部分, EOF才返回 True ,否则返回 False 。在对文件进行操作时,可使用 EOF函数来判断是否到达文件尾部,以避免因试图在文件结尾处写入数据而产生错误。

Page 28: 第 6 章  文件操作

FreeFile函数FreeFile函数返回下一个可供 Open 语句所使用的文件号,其语法结构如下:FreeFile[(rangenumber)]

其中参数 rangenumber 为可选参数,用于指定文件号的取值范围,以便 FreeFile函数返回在该范围内的下一个可用的文件号。如果 rangenumber取为 0 ,表示 FreeFile函数返回一个介于 1~ 255 的有效文件号;如果 rangenumber取为 1 ,表示 FreeFile函数返回一个介于 256~ 511 的有效文件号。

Page 29: 第 6 章  文件操作

FileLen函数FileLen函数返回一个表示文件大小的长整型数据,语法结构如下:FileLen(pathname)

其中参数 pathname 为必选参数,为一字符串表达式,用于指定文件的详细路径。使用 FileLen函数来获取文件大小时,可以不必先打开相应的文件。如果所指定的文件已经被打开,则 FileLen函数返回的是文件打开前的大小。

Page 30: 第 6 章  文件操作

LOF函数LOF函数返回一个表示文件大小的长整型数据,语法结构如下:LOF(filenumber)其中参数 filenumber 为必选参数,为用 Open语句打开的文件的文件号。 LOF函数虽然可以得到文件的大小,但文件必须先使用 Open 语句打开。

Page 31: 第 6 章  文件操作

【案例【案例 6-36-3】 学生成绩管理系统的设计】 学生成绩管理系统的设计 设计 1 个如图 6-9 所示的学生成绩管理系统,在该系统中,不仅可以保存或显示学生的学号、姓名、成绩,而且还可以按学号查找某个学生的学号、姓名、成绩,具体要实现的功能如下。单击“新增成绩”按钮,则向文件“ d:\成绩 \11.txt” 中新增一个学生的成绩信息。单击“上一记录”按钮,则在相应的文本框中显示前一个学生的成绩信息。如果到达文件顶部,则弹出图 6-10 所示的【错误】提示框。

图 6-9 学生成绩管理系统

图 6-10 【错误】提示框

Page 32: 第 6 章  文件操作

单击“下一记录”按钮,则在相应的文本框中显示下一个学生的成绩信息。如果到达文件结束部分,则弹出图 6-11 所示的【错误】提示框。 随机文件是以记录为单位写入数据的 ,且数据的长度必须是固定的 ,其读写操作所用到的函数或语句和顺序文件不一样,在本案例中,我们将学习如何使用这些函数和语句来读写随机文件。

图 6-11 【错误】提示框

Page 33: 第 6 章  文件操作

【案例解析】1 .界面设计 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材2 .新增学生成绩 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材 ( 5 )操作步骤见教材

Page 34: 第 6 章  文件操作

3 .显示、查找学生成绩 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材 ( 5 )操作步骤见教材 ( 6 )操作步骤见教材 ( 7 )操作步骤见教材 ( 8 )操作步骤见教材 ( 9 )操作步骤见教材 ( 10 )操作步骤见教材 ( 11 )操作步骤见教材

Page 35: 第 6 章  文件操作

随机文件的读操作是通过 Get# 语句来完成的,Get# 语句的语法结构如下:Get #filenumber,[recnumber],varname

其中参数 filenumber 为必选参数,对应于用 Open 语句打开文件时所指定的文件号;参数 recnumber 为可选参数,为读出记录的编号,用来表示读取数据的位置。参数 varname 为必选参数,为一个有效的变量名,用来存储读出的数据。

Page 36: 第 6 章  文件操作

在本案例中,读操作所对应的语句为Get #1, currentrecord, gstu

其中“ 1” 为文件号,“ currentrecord” 对应于记录的位置,“ gstu” 用于存放读出的数据。在随机文件中,每个记录都对应一个位置,第一个记录位于位置 1 ,第二个记录位于位置 2 ,依此类推,因此只要指定记录的位置,便可以得到该位置的记录。

Page 37: 第 6 章  文件操作

【知识扩展】由于随机文件是由固定长度的记录所组成的,每个记录又是由若干固定长度的字段所组成,因此在定义各个字段时不仅要给出字段的数据类型,还要给出字段的长度,并且记录只有被声明后,才可以来定义一个记录类型的变量。声明记录的语法结构如下:Private Type 记录名 字段 1 名 As 数据类型 *长度 字段 2 名 As 数据类型 *长度 …

Page 38: 第 6 章  文件操作

【知识扩展】字段 n 名 As 数据类型 *长度End Type

在本案例中,程序的开始便声明了一个名为“ stu” 的记录类型,它包含 3 个字段,一个字段名为“ sNum” ,数据类型为字符型,长度为 10 个字节,用于存放学生的学号;一个字段名为“ sName” ,数据类型为字符型,长度为 20 个字节,用于存放学生的姓名;一个字段名为“ Score” ,数据类型为字符型,长度为 4 个字节,用于存放学生的成绩。

Page 39: 第 6 章  文件操作

随机文件只能对定长的记录进行读写操作,而二进制文件可以对不定长的记录进行读写操作,这样便可以节省大量的磁盘空间。二进制文件是以字节为单位来访问文件,允许用户随意地组织或访问数据。在用 Open 语句以 Binary方式打开文件后,便可以在文件的任何位置读写任何形式的数据,因此二进制文件是 3 种文件中最为灵活的一种。二进制文件的读写操作和随机文件所使用的语句是一样的,使用 Get# 语句来读二进制文件,使用 Put# 语句向二进制文件中写入数据,但参数的含义有所不同。参数 recnumber 表示的不是第几个记录,而是第几个字节,另外参数 varname 可以是任意类型的变量,而不仅仅是记录型变量,但通常把参数 varname 定义为字节型变量。

Page 40: 第 6 章  文件操作

【案例小结】 虽然在 Visual Basic 6.0 中文件被分为不同的类型,并且文件类型不同时,其读写操作的所使用的方法也不一样,但不论是哪种类型的文件,对其进行读写操作时,大概都要经历以下过程: 使用 Open 语句打开文件; 对文件进行读写操作; 使用 Close 语句关闭文件。 要读取顺序文件中的内容,可以使用 Input函数、 Line Input# 语句或 Input# 语句来实现,而要向顺序文件中写入数据,可以使用 Print#或 Write#语句来完成。 Get# 语句既可以读取随机文件中的数据,还可以读取二进制文件中的数据,相应地向随机文件、二进制文件中写入数据,可以使用 Put # 语句来完成。

Page 41: 第 6 章  文件操作

【案例【案例 6-46-4】 文件资源管理器的设计】 文件资源管理器的设计 设计图 6-16 所示的文件资源管理器,该管理器不仅可以显示文件、文件夹以及驱动器,而且还可以对文件进行复制、粘贴、删除等操作,但在进行这些操作之前,必须先选中文件,否则弹出图 6-17 所示的【错误】提示框。

图 6-16 文件资源管理器 图 6-17 【错误】提示框 上两个案例中,我们学习了如何对文件进行读写操作,在本案例中,我们将学习对已经存在的文件进行复制、删除操作。

Page 42: 第 6 章  文件操作

【案例解析】1 .界面设计 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材

Page 43: 第 6 章  文件操作

2 .删除文件 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材 ( 5 )操作步骤见教材 ( 6 )操作步骤见教材 ( 7 )操作步骤见教材 ( 8 )操作步骤见教材

Page 44: 第 6 章  文件操作

在 Visual Basic 6.0 中,文件的删除可以通 过 Kill语句来完成,具体的语法结构如下:Kill 文件名在指定“文件名”时,必须给出文件的详细路径,并且文件名中还可以含有通配符“ *” 和“?”。例如:Kill "d:\myfile\*.txt"

语句便可以删除 D 盘“ myfile” 文件夹下的所有文本文件。

Page 45: 第 6 章  文件操作

3 .复制、剪切和粘贴文件 ( 1 )操作步骤见教材 ( 2 )操作步骤见教材 ( 3 )操作步骤见教材 ( 4 )操作步骤见教材 ( 5 )操作步骤见教材 ( 6 )操作步骤见教材 ( 7 )操作步骤见教材 ( 8 )操作步骤见教材 ( 9 )操作步骤见教材 ( 10 )操作步骤见教材 ( 11 )操作步骤见教材

Page 46: 第 6 章  文件操作

( 1 )在 Visual Basic 6.0 中,复制文件可以通过 FileCopy 语句来实现,具体语法结构如下: FileCopy 源文件名 ,目标文件名该语句的功能是将源文件中的内容复制到目标文件中去。在指定目标文件和源文件时,最好是给出详细的路径,并且文件名中不能含有通配符。

Page 47: 第 6 章  文件操作

( 2 )文件的查询可以通过 Dir函数来实现,具体语法结构如下:字符串变量= Dir (文件名)该语句的功能是返回与指定“文件名”相匹配的文件,如果没有匹配的,则返回空字符.例如,在本案例中便是通过代码“ Dir(DestFile)” 来寻找与“ DestFile”向匹配的文件,如果找不到,则返回空字符;如果能找到,则返回“ DestFile” 所指定的文件.

Page 48: 第 6 章  文件操作

【知识扩展】( 1 )文件除了可以复制、删除之外,还可以重命名。在 Visual Basic 6.0 中,文件的重命名是用 Name 语句来实现的,具体语法结构如下:Name 原文件名 As 新文件名功能:将“原文件名”改名为“新文件名”。说明:“原文件名”必须是已经存在的文件名,而“新文件名”必须是一个不存在的新的文件名,并且两个文件的路径必须是一样的。如果“新文件名”的路径与“原文件名”的路径不一样时,则将“原文件”移动“新文件名”所指定的路径下,并将文件重命名为“新文件名”。( 2 )无论是删除或复制文件,还是文件重命名,都不能对已经打开的文件进行操作,否则会产生错误。

Page 49: 第 6 章  文件操作

【案例小结】 文件操作除了基本的读写操作之外,还应包括删除、复制、重命名等操作。在 Visual Basic 6.0 中, Kill 语句用于文件的删除, FileCopy 语句用于文件的复制,而 Name语句用于文件的重命名。在进行删除、复制、改名等操作时,最好是指定文件的详细路径。另外,对已经打开的文件,最好不要进行以上操作,否则会出错。

Page 50: 第 6 章  文件操作

6.3 6.3 综合案例综合案例 在第 4 章最后的综合案例中,设计了一个简单记事本,该记事本只能编辑文本,不能保存和打开文本。在本案例中,将让记事本具有保存、打开以及新建文本的功能,进一步巩固已学的文件操作知识,具体操作过程见教材

Page 51: 第 6 章  文件操作

【案例小结】到本实验为止,一个比较完整的记事本应用程序才算大功告成。该应用程序不仅可以编辑文本框中的内容,而且还可以实现文件处理的功能,包括文件的打开和保存。在本案例中,我们主要巩固了以下内容: 顺序文件的打开; 读顺序文件; 写顺序文件; 关闭顺序文件。

Page 52: 第 6 章  文件操作

6.4 6.4 实训实训6.4.1 文件管理器的设计6.4.2 设计一个简单的学生成绩录入系统

Page 53: 第 6 章  文件操作

6.5 6.5 本章小结本章小结 Visual Basic 6.0 为用户提供了强大文件处理功能,使用 Visual Basic 6.0 所提供的文件处理控件或语句、函数,便可以让应用程序具有数据保存和打开的功能。由于不同的文件类型所使用的操作方法是不一样的,因此编写一个完整的文件处理的程序是一项比较复杂的任务,我们所学的文件处理过程是最为基础的部分。

Page 54: 第 6 章  文件操作

6.5 6.5 本章小结本章小结在本章主要学习了以下内容: 文件的基本概念; 文件的分类; 3 种常用的文件管理控件; 与文件处理相关的一些基本语句和函数; 3 种文件的读写操作; 文件的删除、复制、重命令等基本操作。