版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、江苏省计算机等级考试 Visual Basic 程序设计程序设计第 7 章 文 件江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计 掌握文件管理控件的主要属性、事件和方法掌握文件管理控件的主要属性、事件和方法 掌握文件的根本概念掌握文件的根本概念 掌握文件的常用函数、语句掌握文件的常用函数、语句 掌握掌握 顺序文件的读、写操作顺序文件的读、写操作 了解随机记录文件了解随机记录文件 了解二进制文件了解二进制文件教学要求教学要求江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计 7.1 7.1 文件管理控件文件管理控件 7.2 7.2
2、文件处置文件处置 7.3 7.3 顺序文件顺序文件 7.4 7.4 随机文件处置随机文件处置教学内容教学内容江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.1 7.1 文件管理控件文件管理控件 VB VB 提供了驱动器列表框、目录列提供了驱动器列表框、目录列表框和文件列表框三个特殊的控件,将表框和文件列表框三个特殊的控件,将他们组合起来运用,可以创建与文件操他们组合起来运用,可以创建与文件操作有关的界面。作有关的界面。驱动器列表框驱动器列表框DriveListBoxDriveListBox目录列表框目录列表框DirListBoxDirListBox文件列表框
3、文件列表框FileListBoxFileListBox江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.1.1 7.1.1 驱动器列表框驱动器列表框DriveListBoxDriveListBox 功能功能 : 一个下拉式列表框,显示当前系统的一个下拉式列表框,显示当前系统的一切驱动器列表,顶端显示的是当前选定一切驱动器列表,顶端显示的是当前选定的驱动器。的驱动器。 常用属性常用属性 : Name: Name:称号属性,缺省时该属性值为称号属性,缺省时该属性值为Drive1;Drive1; Drive: Drive:当前驱动器属性,该属性为运转态属性;可以用于
4、前往当前驱动器属性,该属性为运转态属性;可以用于前往在驱动器列表框中当前选取的驱动器号,也可用于指定在驱动器列在驱动器列表框中当前选取的驱动器号,也可用于指定在驱动器列表框顶端显示的驱动器;表框顶端显示的驱动器; 常用事件常用事件 :_ Change: Change:当用户在驱动器列表框中选择一个驱动器,或在列表框当用户在驱动器列表框中选择一个驱动器,或在列表框顶端输入一个驱动器标识,或经过赋值语句修正了驱动器列表框的顶端输入一个驱动器标识,或经过赋值语句修正了驱动器列表框的DriveDrive属性都会激活该事件。属性都会激活该事件。 普通在此事件中,用普通在此事件中,用drivedrive属
5、性更新目录列表框的属性更新目录列表框的pathpath属性,坚属性,坚持驱动器列表框和目录列表框的同步变化。持驱动器列表框和目录列表框的同步变化。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计 常用语句常用语句 :格式:格式:ChDrive Drive ChDrive Drive 功能:改动当前任务驱动器功能:改动当前任务驱动器 对文件进展存取操作对文件进展存取操作时的缺省驱动器。时的缺省驱动器。阐明:阐明: Drive Drive参数是字符型,必需为系统有效的驱动参数是字符型,必需为系统有效的驱动器名。器名。 例如例如 : ChDrive ChDrive “
6、D:D: 留意:该语句的执行与驱动器列表框无关,既不会改动留意:该语句的执行与驱动器列表框无关,既不会改动列表框的列表框的drivedrive属性,列表框顶端的显示,也不会引发属性,列表框顶端的显示,也不会引发驱动器列表框的驱动器列表框的ChangeChange事件。事件。 同样,在驱动器列表框中选定某驱动器,并不能同样,在驱动器列表框中选定某驱动器,并不能直接将其变卦为当前任务驱动器,必需运用如下语句:直接将其变卦为当前任务驱动器,必需运用如下语句: ChDrive drive1.drive ChDrive drive1.drive江苏计算机等江苏计算机等级考试级考试 Visual Basi
7、c 程序设计程序设计7.1.2 7.1.2 目录列表框目录列表框( DirListBox )( DirListBox ) 功能功能 :显示系统当前驱动器的目录构造,并突:显示系统当前驱动器的目录构造,并突出显示当前目录。显示从根目录开场,到当前目出显示当前目录。显示从根目录开场,到当前目录这条途径上的一切目录,以及当前目录的下属录这条途径上的一切目录,以及当前目录的下属一切第一级子目录。一切第一级子目录。 目录索引目录索引 : 当前突出显示的目录,索引当前突出显示的目录,索引值为值为-1-1,紧邻其上的目录为,紧邻其上的目录为-2-2,再上一层为再上一层为-3-3,依次类推;而当,依次类推;而
8、当前任务目录的第一个子目录的索前任务目录的第一个子目录的索引值为引值为0 0,其他子目录的索引值,其他子目录的索引值依次递增。依次递增。-4-3-2-101江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计 常用属性常用属性 : Name: Name:称号属性,缺省时为称号属性,缺省时为Dir1;Dir1; Path: Path:设置和前往目录列表框中的当前目录,为运转态属性;可设置和前往目录列表框中的当前目录,为运转态属性;可以经过如下两种方式设置:一是赋值语句;二是双击目录列表框以经过如下两种方式设置:一是赋值语句;二是双击目录列表框中某项。中某项。留意:普通
9、目录列表框中显示当前驱动器上的目录,即目录列表留意:普通目录列表框中显示当前驱动器上的目录,即目录列表框与驱动器列表框必需同步,必需运用如下语句:框与驱动器列表框必需同步,必需运用如下语句: .path=.path=.drive.drive 此语句通常在驱动器列表框的此语句通常在驱动器列表框的Change Change 事件中执行。事件中执行。例如:例如:Private Sub Drive1_change()Private Sub Drive1_change() Dir1.path=Drive1.drive Dir1.path=Drive1.driveEnd SubEnd Sub江苏计算机等江
10、苏计算机等级考试级考试 Visual Basic 程序设计程序设计 常用事件常用事件 Change: Change: 当用户双击目录列表框中的目录项,或经过赋值语句改当用户双击目录列表框中的目录项,或经过赋值语句改动了目录列表框的动了目录列表框的PathPath属性,都会引发该事件。属性,都会引发该事件。 普通在此事件中,用普通在此事件中,用pathpath属性更新文件列表框的属性更新文件列表框的pathpath属性,坚属性,坚持文件列表框和目录列表框的同步变化。持文件列表框和目录列表框的同步变化。 常用语句常用语句 :格式:格式:ChDir PathChDir Path功能:改动系统当前任务
11、目录。功能:改动系统当前任务目录。阐明:阐明:1 1 ChDirChDir语句改动的是当前驱动器或指定驱动器的任务目语句改动的是当前驱动器或指定驱动器的任务目录,而不能改动任务驱动器;录,而不能改动任务驱动器;2 2该语句与目录列表框无关,即不会改动目录列表框的当前目该语句与目录列表框无关,即不会改动目录列表框的当前目录,也不会触发录,也不会触发ChangeChange事件。事件。 同样,在目录列表框中选定某目录,并不能将其变卦为当前任同样,在目录列表框中选定某目录,并不能将其变卦为当前任务目录,必需运用如下语句:务目录,必需运用如下语句: ChDir dir1.PathChDir dir1.
12、Path江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.1.3 7.1.3 文件列表框文件列表框( FileListBox )( FileListBox ) 功能功能 :显示系统当前目录下的文件列表。:显示系统当前目录下的文件列表。 常用属性常用属性 : NameName:称号属性,缺省时为:称号属性,缺省时为File1File1; Path Path:设置和前往文件列表中所显示文件的途径,:设置和前往文件列表中所显示文件的途径,为运转态属性为运转态属性留意:普通文件列表框中显示当前目录之中的文留意:普通文件列表框中显示当前目录之中的文件,即文件列表框与目录
13、列表框必需同步,必需件,即文件列表框与目录列表框必需同步,必需运用如下语句:运用如下语句: .path=.path=.path.path 此语句通常在目录列表框的此语句通常在目录列表框的Change Change 事件中执事件中执行。行。例如:例如:Private Sub dir1_change()Private Sub dir1_change() file11.path=dir1.path file11.path=dir1.pathEnd SubEnd Sub江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计Pattern:文件种类,设置文件列表框显示文件的种类
14、文件种类,设置文件列表框显示文件的种类, 缺省为缺省为*.* 例:例: File1.Pattern=“*.txt ; *.frm FileName:设置和前往文件列表框中将显示的文件称号,为运转态设置和前往文件列表框中将显示的文件称号,为运转态属性;属性; 例:例: File1.fileName=“d:*.frmListCount:前往文件前往文件(组合框、驱动器、目录组合框、驱动器、目录)列表框中的所列工程列表框中的所列工程的总数,为运转态属性;的总数,为运转态属性; ListIndex:设置或前往当前控件上所选择工程的设置或前往当前控件上所选择工程的“索引值,为运索引值,为运转态属性,列表
15、框中的第一项为转态属性,列表框中的第一项为0,第二项为,第二项为1,依次类推,假设,依次类推,假设文件列表框中一项也没有选定,那么前往文件列表框中一项也没有选定,那么前往-1; dir1.listindex = -2 drive1.listindex = 2江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计常用事件常用事件 PathChange: Path属性改动时引发该事件;属性改动时引发该事件; 留意:在程序中,给文件列表框的留意:在程序中,给文件列表框的Filename属性赋值,属性赋值,也会自动改动它的也会自动改动它的Path属性,触发身手件。属性,触发身
16、手件。file1.filename=“c:config.sys PatternChange: Pattern属性改动时引发该事件;属性改动时引发该事件; Click:单击事件。单击事件。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计文件属性文件属性:指定在文件列表框中显示某类属性的文件指定在文件列表框中显示某类属性的文件 ReadOnly:只读属性,缺省值只读属性,缺省值True; Hidden:隐含属性,缺省值隐含属性,缺省值False ; System:系统属性,缺省值系统属性,缺省值False; Archive: 存档属性,缺省值存档属性,缺省值True
17、 ; Normal: 通常属性,缺省值通常属性,缺省值True;阐明:当阐明:当Normal属性为属性为True 时,时,System 、Hidden 文件不显文件不显示;当示;当Normal属性为属性为False 时时, 文件类型置为文件类型置为True的可显示。的可显示。 file1.normal=false file1.system=true江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.1.4 7.1.4 组合运用文件管理控件组合运用文件管理控件为使文件管理控件协调任务,关键点是使驱为使文件管理控件协调任务,关键点是使驱动器、目录、文件列表框同步,经
18、过下述两个事动器、目录、文件列表框同步,经过下述两个事件过程实现:件过程实现:保证目录列表框与驱动器列表框同步更新。保证目录列表框与驱动器列表框同步更新。保证文件列表框与目录列表框同步更新。保证文件列表框与目录列表框同步更新。来看个例子吧来看个例子吧例例2 2。Private Sub drive1_change()Private Sub drive1_change() dir1.path=drive1.drive dir1.path=drive1.driveEnd SubEnd SubPrivate Sub dir1_change()Private Sub dir1_change() file
19、11.path=dir1. path file11.path=dir1. pathEnd SubEnd Sub例:文件控件的组合运用。例:文件控件的组合运用。Private Sub Drive1_Change() Dir1.Path = Drive1.DriveEnd Sub Private Sub Dir1_Change() File1.Path = Dir1.Path File1.Pattern = *.wmfEnd SubPrivate Sub File1_Click() Dim name As String If Right(File1.Path, 1) Then name = Fil
20、e1.Path & & File1.FileName Else name = File1.Path & File1.FileName End If Picture1.Picture = LoadPicture( name )End SubP134江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计.2 .2 文件处置文件处置 文件:文件: 所谓文件,是一组相关信息的集所谓文件,是一组相关信息的集合,是存放在磁盘上一系列相关的字节合,是存放在磁盘上一系列相关的字节. .文件访问类型:文件访问类型: 顺序访问:从文件头开场,依次访问其中顺序访问:
21、从文件头开场,依次访问其中数据,适用于文本文件;数据,适用于文本文件; 随机访问:适用于以记录方式保管的二进随机访问:适用于以记录方式保管的二进制文件,可以存取恣意指定位置的记录;制文件,可以存取恣意指定位置的记录; 二进制访问:适用于恣意二进制文件二进制访问:适用于恣意二进制文件 , , 以以字节为单位存取数据。字节为单位存取数据。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计v文件操作的普通步骤:文件操作的普通步骤:v首先将文件首先将文件“翻开,即将相关信息加载进翻开,即将相关信息加载进内存,建立文件与内存中某个文件缓冲区的内存,建立文件与内存中某个文件缓
22、冲区的关联;关联;v文件文件“存取操作;存取操作;v最后最后“封锁文件,即释放文件所占用的文封锁文件,即释放文件所占用的文件缓冲区。件缓冲区。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.2.27.2.2文件访问的语句和函数文件访问的语句和函数P 表表7-2语句和函数顺序型随机型二进制型CloseGetInPut()InPut #Line Input #OpenPrint #PutTypeEnd TypeWrite江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计1 1翻开文件翻开文件 Open Open语句语句 对文件进展操
23、作之前,必需用对文件进展操作之前,必需用OpenOpen语句翻开或建语句翻开或建立一个文件立一个文件 功能功能 : 为文件的输入输出分配缓冲区,指定文件的存取类型为文件的输入输出分配缓冲区,指定文件的存取类型( (方式方式) )和存取方式,定义与文件相关联的文件号。和存取方式,定义与文件相关联的文件号。 格式格式 : Open Open 文件名文件名 FOR FOR 方式方式 Access Access 存取类型存取类型 锁锁定定 AS # AS #文件号文件号 Len= Len=记录长度记录长度 阐明阐明 :格式中的格式中的OpenOpen、 FOR FOR、 Access Access、A
24、SAS、LenLen为关键字为关键字文件名文件名(Filename)(Filename): 文件的名字,可用字符串或字符型变量文件的名字,可用字符串或字符型变量表示。可以包括盘符和途径。表示。可以包括盘符和途径。3 3 方式方式(mode)(mode):江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计阐明访问文件的方式:阐明访问文件的方式:OutPutOutPut设定为顺序输出方式设定为顺序输出方式InPutInPut设定为顺序输入方式设定为顺序输入方式AppendAppend设定为添加方式,与设定为添加方式,与OutPutOutPut方式不方式不同,同,以以A
25、ppendAppend方式翻开顺序文件时,文方式翻开顺序文件时,文件指件指针定位在文件末尾,写入的数据添针定位在文件末尾,写入的数据添加到加到原来文件的后面。原来文件的后面。RandomRandom设定为随机访问的方式设定为随机访问的方式BinaryBinary设定为二进制访问方式设定为二进制访问方式假设缺省假设缺省FORFOR子句,将以随机访问方式子句,将以随机访问方式RandomRandom翻开文翻开文件。件。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计程序程序磁盘文件磁盘文件输入输入数据数据磁盘文件磁盘文件输出输出数据数据读文件方式读文件方式:Inpu
26、t写文件方式写文件方式:OutputAppend江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计4) 4) 存取类型存取类型(Access)(Access) 用来指定访问文件的类型。可以是:用来指定访问文件的类型。可以是:ReadRead对翻开的文件只能进展读操作对翻开的文件只能进展读操作WriteWrite对翻开的文件只能进展写操作对翻开的文件只能进展写操作Read WriteRead Write对翻开的文件可读可写对翻开的文件可读可写5) 5) 文件号文件号(Fileno)(Fileno) 取值范围在取值范围在1 1511511范围之内。执行范围之内。执行O
27、penOpen语句时,语句时,文件与分配给定的文件号相关联。文件与分配给定的文件号相关联。6) 6) 记录长度记录长度(Reclength)(Reclength)是一个整型表达式,其值是一个整型表达式,其值3276732767。对顺序文件,用该参数设定缓冲区的大小。对顺序文件,用该参数设定缓冲区的大小。不指定,缓冲区的缺省值为不指定,缓冲区的缺省值为512512个字节。个字节。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计留意:留意: 1) 1) 假设以假设以OutputOutput、AppendAppend、RandomRandom和和BinaryBinar
28、y方式翻开一个不存在的文方式翻开一个不存在的文件,件,Visual BasicVisual Basic会创建一个相应的文件会创建一个相应的文件。 2) 2) 在在InputInput、RandomRandom和和BinaryBinary方式下,方式下,可用不同的文件号翻开同一个文件。但以可用不同的文件号翻开同一个文件。但以OutputOutput和和AppendAppend方式翻开的文件在封锁之方式翻开的文件在封锁之前不能用不同的文件号反复地翻开它。前不能用不同的文件号反复地翻开它。 3) 3) 一切当前运用的文件号必需是独一的一切当前运用的文件号必需是独一的。即当前运用的文件号不能再分配给其
29、他文。即当前运用的文件号不能再分配给其他文件。件。 4) 4) 假设以假设以OutputOutput方式翻开一个已存在方式翻开一个已存在的顺序文件,那么该文件中原来数据将被覆的顺序文件,那么该文件中原来数据将被覆盖。盖。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计1) Open Exam FOR Output AS #5 假设文件假设文件“Exam不存在,那么建立一个新文件,可以将数据不存在,那么建立一个新文件,可以将数据写入到文件中去。假设文件写入到文件中去。假设文件“Exam已存在,那么该语句翻开已存已存在,那么该语句翻开已存在的文件,新写入的数据将覆盖
30、原来的数据。在的文件,新写入的数据将覆盖原来的数据。2) Open Exam FOR Append AS #5 假设文件假设文件“Exam不存在,那么建立一个新文件,否那么翻开已不存在,那么建立一个新文件,否那么翻开已存在的名为存在的名为“Exam的文件,新写入的数据添加到文件的后面,原的文件,新写入的数据添加到文件的后面,原来的数据依然存在。来的数据依然存在。3) Open Exam FOR Input AS #5 翻开已存在的名为翻开已存在的名为Exam的文件,可从中读出数据。假设文件的文件,可从中读出数据。假设文件“Exam不存在将产生不存在将产生“File Not Found错误。错误
31、。P举举 例例江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计2 2、封锁文件、封锁文件 格式格式 :Close #Close # 功能功能 :封锁指定的文件号对应的文件。:封锁指定的文件号对应的文件。 释放相应缓冲区和与该文件相联络的文件号。释放相应缓冲区和与该文件相联络的文件号。 阐明阐明 :1 1该语句适用于任何文件;该语句适用于任何文件;2 2语句中可以包含多个文件号语句中可以包含多个文件号, ,文件号之间用逗号分隔文件号之间用逗号分隔3 3假设语句中缺省文件号参数,那么封锁一切用假设语句中缺省文件号参数,那么封锁一切用OpenOpen语句翻开的文件;语
32、句翻开的文件;4 4当运用程序终了时,会自动封锁一切文件。当运用程序终了时,会自动封锁一切文件。例例1 1:Close #1,#2Close #1,#2例例2 2:CloseClose江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计3 3、封锁一切文件、封锁一切文件ResetReset语句语句 格式格式:Reset:Reset 功能功能 :封锁一切用:封锁一切用OpenOpen语句翻开的文件。语句翻开的文件。 阐明阐明 :适用于任何文件。:适用于任何文件。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计4 4、锁定和解锁语句、锁定
33、和解锁语句LockLock和和UnlockUnlock语句语句locklock语句语句 格式格式 :Lock #Lock 功能功能 :锁定指定文件号所对应的文件,不允许其他用:锁定指定文件号所对应的文件,不允许其他用户对该文件进展读写操作。户对该文件进展读写操作。UnlockUnlock语句语句 格式格式 :Unlock #Unlock 功能功能 :解除锁定的文件。:解除锁定的文件。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计相关函数和语句相关函数和语句EofEof文件号文件号 当文件指针到达文件终了标志时前往当文件指针到达文件终了标志时前往TrueTrue
34、,否那,否那么前往么前往FalseFalse。FreeFile(FreeFile(文件号范围文件号范围 前往前往OpenOpen语句可以运用的下一个有效文件号语句可以运用的下一个有效文件号LOF(LOF(文件号文件号 前往已用前往已用OpenOpen语句翻开的文件的字节数文件长语句翻开的文件的字节数文件长度度P140江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.3 7.3 顺序文件顺序文件 以顺序方式存取的文件称为顺序文件,以顺序方式存取的文件称为顺序文件,普通是文本文件;普通是文本文件;特性:特性: 每行数据长度可以不同;每行数据长度可以不同; 添加数据
35、时,只能添加到原有数据添加数据时,只能添加到原有数据的最后;的最后; 查找数据时,必需从头开场顺序查查找数据时,必需从头开场顺序查找。找。适用:适用: 每行数据长度不确定时;每行数据长度不确定时; 数据不经常做新增、修正和删除操数据不经常做新增、修正和删除操作时;作时; 处置数据是依次延续处置。处置数据是依次延续处置。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.3.1 顺序文件的写操作顺序文件的写操作1、翻开文件、翻开文件格式格式:Open For As # 功能功能:用指定的文件号以顺序输出方式或添加方:用指定的文件号以顺序输出方式或添加方式翻开文件。
36、式翻开文件。阐明阐明:1文件名可以是字符串,包含途径;文件名可以是字符串,包含途径;2假设指定的文件不存在,系统将创建一个相假设指定的文件不存在,系统将创建一个相应的文件;应的文件;3以以Output方式翻开文件,文件中原有的数据方式翻开文件,文件中原有的数据被覆盖;被覆盖;4以以Append方式翻开文件,写入的数据将添加方式翻开文件,写入的数据将添加到原文件的尾部到原文件的尾部5文件号的运用必需是独一的,即当前曾经占文件号的运用必需是独一的,即当前曾经占用的文件号不能再分配给其他文件运用;文件号用的文件号不能再分配给其他文件运用;文件号的运用范围是的运用范围是1-511;6一个文件在用一个文
37、件在用Output和和Append方式翻开后,方式翻开后,不能再反复翻开不能再反复翻开江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计例例1:Open “D:hbTest.txt For Output as #1例例2:Dim sFileName As String sFileName=“D:hbTest.txt Open sFileName For Append As #100例例3:Open “File1 For OutPut As #9 Open “File2 For Output As #9例例4:Open “File1 For Append As #1
38、0 Open “File1 For Append As #11以一样的文件号翻开以一样的文件号翻开两个不同的文件两个不同的文件在文件未封锁前在文件未封锁前又反复翻开又反复翻开 错误在哪里?错误在哪里?江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计、Print 语句语句格式格式:Print ,功能功能:将输出列表中的语句写到顺序文件中。:将输出列表中的语句写到顺序文件中。阐明阐明:该语句和普通的:该语句和普通的Print语句的输出控制格式完全语句的输出控制格式完全一样,也分紧凑和规范两种。一样,也分紧凑和规范两种。执行上述程序后,文件执行上述程序后,文件test
39、.dat中的数据如下中的数据如下Open “test.dat for output as #10print #10, 1 , 2 , 3print #10,We,study,VB6.0Close 10例例1: 2 3We study VB6.0江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计提示:提示: 为了防止以紧凑格式输出的各字符串难以明显区分,可以人为了防止以紧凑格式输出的各字符串难以明显区分,可以人为加上逗号间隔:为加上逗号间隔: 例如:例如: print #10,We;, ; study;,; VB6.0上述语句的执行结果为:上述语句的执行结果为:We
40、 ,study ,VB6.0Open “test.dat for output as #10Print #10 , 1;2;3Print #10 , We;study;VB6.0Close 101 2 3WestudyVB6.0例例2:执行上述程序后,文件执行上述程序后,文件test.dat中的数据如下:中的数据如下:江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计Private Sub Command1_Click() Dim i As Integer, a(10) As Integer Open d:test.txt For Output As #1 For
41、 i = 1 To 10 a(i) = Int(Rnd * 100) + 100 Print a(i); Print #1, a(i); Next i Print Print #1, Close #1End Sub江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计3 Write语句语句格式格式:Write ,功能功能:将输出列表中的语句写到顺序文件中。:将输出列表中的语句写到顺序文件中。阐明阐明:Write语句和语句和Print语句的功能根本一样,语句的功能根本一样,它们之间的差别主要在:它们之间的差别主要在:1Write语句写入的数据按照紧凑格式存放,语句写入的
42、数据按照紧凑格式存放,各数据项之间自动插入逗号作为分隔符;各数据项之间自动插入逗号作为分隔符;2Write语句写入的字符串数据自动加上双引语句写入的字符串数据自动加上双引号作为限界符。号作为限界符。OPEN “TEST.DAT for output as # 12Write #12 ,1 ,-2 ,3 ,ABCWrite #12Write #12, 5,6,7,DEF,Write #12Close #12例:例:1,-2,3,ABC5,6,7,DEF上述程序执行后,上述程序执行后, TEST.DAT文件中的数据为:文件中的数据为:江苏计算机等江苏计算机等级考试级考试 Visual Basic
43、程序设计程序设计Private Sub Command2_Click() Dim i As Integer, a(10) As Integer Open d:test.txt For Output As #1 For i = 1 To 10 a(i) = Int(Rnd * 100) + 100 Print a(i); Write #1, a(i), Next i Print Write #1, Close #1End Sub江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.3.2 7.3.2 顺序文件的读操作顺序文件的读操作 当一个文件存在时,可以对它进展读
44、操作。当一个文件存在时,可以对它进展读操作。读操作分为两种,一种是一个数据一个数据地读,读操作分为两种,一种是一个数据一个数据地读,另一种是一行数据一行数据地读。另一种是一行数据一行数据地读。1 1、翻开文件、翻开文件 格式格式 :Open Open For Input As For Input As 功能功能 :用指定的文件号以顺序输入方式翻开文:用指定的文件号以顺序输入方式翻开文件。件。 阐明阐明 :以:以InputInput方式翻开的文件,只能进展读方式翻开的文件,只能进展读操作。操作。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计2、Input 语句语
45、句格式格式:Input ,变量表变量表功能功能:从一个翻开的顺序文件中读取数据,:从一个翻开的顺序文件中读取数据,并将它们赋值给相应的变量。并将它们赋值给相应的变量。 阐明阐明 :1 1变量表可以包含简单变量和数组元素,变量之间用逗号间隔,变量表可以包含简单变量和数组元素,变量之间用逗号间隔,变量类型必需与文件中的数据项的类型一致;变量类型必需与文件中的数据项的类型一致;2 2从顺序文件中读数据时,要从头开场,依次读出,假设数据从顺序文件中读数据时,要从头开场,依次读出,假设数据类型和变量类型不一致,那么赋一个初值给对应的变量;类型和变量类型不一致,那么赋一个初值给对应的变量;3 3从顺序文件
46、读数据时,忽略前导空格、回车符、换行符;从顺序文件读数据时,忽略前导空格、回车符、换行符;4 4读取数值型数据时,以其后的第一个空格或逗号或回车换行读取数值型数据时,以其后的第一个空格或逗号或回车换行符作为终了;符作为终了;5 5读取字符型数据时,以第一个不在双引号里的逗号或回车换读取字符型数据时,以第一个不在双引号里的逗号或回车换行符作为终了;行符作为终了;6 6逻辑型和日期型数据以逻辑型和日期型数据以# #号作为起始符和终了符号作为起始符和终了符, ,要求大写;要求大写;江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计Test.txt 中数据:34 45 7
47、8 789Dim A As Integer,B AS Integer,C As IntegerDim St As StringInput #2 ,A,B,C,St A=34,B=45,C=78,St=“789举举 例例江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计 例:文件例:文件test.dattest.dat中数据如下:中数据如下: This is File Test.dat,-2365,4893,#True# This is File Test.dat,-2365,4893,#True# 要求按下面的格式输出在窗体上:要求按下面的格式输出在窗体上: Th
48、is is File Test.dat This is File Test.dat -2365 4893 True -2365 4893 TruePrivate sub form_click()Private sub form_click() Dim x as integer,y a integer,logic as boolean Dim x as integer,y a integer,logic as boolean Dim filenumber as integer Dim filenumber as integer,chr as stringchr as string Filenum
49、ber=freefile Filenumber=freefile Open Open “Test.datTest.dat for input as #filenumber for input as #filenumber Input #filenumber.chr Input #filenumber.chr Input #filenumber,x,y,logic Input #filenumber,x,y,logic Print char Print char Print x,y,logic Print x,y,logicEnd subEnd sub程序代码如左程序代码如左江苏计算机等江苏计算
50、机等级考试级考试 Visual Basic 程序设计程序设计3 3、Line InputLine Input语句语句 格式格式 :Line Input #Line Input , 功能功能 :将顺序文件以行为单位读出并赋值给:将顺序文件以行为单位读出并赋值给一个变量。一个变量。 阐明阐明 :1 1变量为字符型变量,或字符型数组元素,变量为字符型变量,或字符型数组元素,或变体型变量;或变体型变量;2 2将数据行中除回车符和换行符以外的一切将数据行中除回车符和换行符以外的一切字符都赋值给相应的变量。字符都赋值给相应的变量。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序
51、设计Private Sub Form_Click() Dim line as String,filenumber as integer,str as string filename=freefile Open “c:config.sys For Input As #filenumber Do While Not EOF(filenumber) Line Input #1, line str=str+line+chr(13)+chr(10) Loop Close #filenumber text1.text=strEnd Sub例:将例:将c c盘根目录下的盘根目录下的config.syscon
52、fig.sys文件的内容文件的内容 显示在文本框中显示在文本框中. .江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计4、 Input函数函数格式格式:Input,功能功能:从指定的文件中读取指定个数的:从指定的文件中读取指定个数的字符字符(含空格含空格 及各类符号及各类符号)。 例:例:s=Input(10,#2)江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计顺序文件的修正与删除顺序文件的修正与删除 顺序文件的特点是:顺序文件的特点是: 1 1数据只能从头依次读出;数据只能从头依次读出; 2 2写文件时要么覆盖原来的文件,要么
53、添写文件时要么覆盖原来的文件,要么添加在文件的最后加在文件的最后 这两个特点给顺序文件的修正与删除带来了困这两个特点给顺序文件的修正与删除带来了困难。难。 处理方案以修正为例处理方案以修正为例 :1 1读取数据;读取数据;2 2判别能否要修正?不修正,那么将数据原封判别能否要修正?不修正,那么将数据原封不动地添加到一个暂时文件中;不动地添加到一个暂时文件中;3 3要修正,那么将新数据添加到该暂时文件中;要修正,那么将新数据添加到该暂时文件中;4 4反复反复1-31-3步直到文件终了;步直到文件终了;5 5删除原始文件;删除原始文件;6 6将暂时文件重新命名为原始文件的名字。将暂时文件重新命名为
54、原始文件的名字。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计顺序文件的运用顺序文件的运用 顺序文件的运用表达在两方面顺序文件的运用表达在两方面: :1 1从文件从文件中读取原始数据并提供应程序处置中读取原始数据并提供应程序处置: :2 2将程序将程序处置结果存放到文件中。处置结果存放到文件中。例:数据文件例:数据文件Test1.TxtTest1.Txt有有1010个同窗的成果,格式个同窗的成果,格式如下:如下: 学号,英语成果,数学成果,计算机成果,学号,英语成果,数学成果,计算机成果,化学成果化学成果要求:统计每个学生的不及格门数,并将不及格要求:统计每个
55、学生的不及格门数,并将不及格门数超越门数超越1 1门门1)1)的学生学号和不及格门数写入的学生学号和不及格门数写入到文件到文件Test2.TxtTest2.Txt中。中。 程序程序 :读取原始数据:读取原始数据: Dim a(10, 5) As Integer Open d:test1.txt For Input As #1 For i = 1 To 10 For j = 1 To 5 Input #1, a(i, j) Next j Next i江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计统计不及格门数并写入目的文件统计不及格门数并写入目的文件Open d
56、:test2.txt For Output As #2For i = 1 To 10 s = 0 For j = 2 To 5 If a(i, j) 1 Then Write #2, a(i, 1), s Print a(i, 1), s End If Next IClose江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.4 7.4 随机文件处置随机文件处置 以随机方式存取的文件称为随机文件,以随机方式存取的文件称为随机文件,也称记录文件,由一组长度相等的记录组也称记录文件,由一组长度相等的记录组成,普通用于数据库文件,具有以下几个成,普通用于数据库文件,具
57、有以下几个特点:特点: 1 1记录定长;记录定长; 2 2假设记录为单字段,那么可对假设记录为单字段,那么可对应与任何一个应与任何一个VBVB的规范类型;假设记录为的规范类型;假设记录为多字段,那么必需由用户进展自定义;多字段,那么必需由用户进展自定义; 3 3随机文件的访问,可根据记录随机文件的访问,可根据记录号随机访问任何一个记录。号随机访问任何一个记录。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计格式格式:Open For Random As # Len=功能功能:翻开一个随机文件。:翻开一个随机文件。阐明阐明:1Random为文件的缺省访问方式,可省
58、略;为文件的缺省访问方式,可省略;2Len为指定的记录长度,不能比实践写入的数据短,否那么为指定的记录长度,不能比实践写入的数据短,否那么会出错会出错 7.4.2 7.4.2 随机文件的翻开随机文件的翻开江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计7.4.1 7.4.1 变量声明变量声明 在处置随机文件之前,必需先声明处置在处置随机文件之前,必需先声明处置文件数据的变量;文件数据的变量;1 1、定义记录类型、定义记录类型 假设需求翻开或创建的随机文件的记假设需求翻开或创建的随机文件的记录是多字段的,必需在模块中预先自定义录是多字段的,必需在模块中预先自定义一
59、个类型。一个类型。 格式格式 :Type Type As As As As As As End Type End Type 阐明阐明 :1 1数据类型为数据类型为VBVB的规范数据类型;的规范数据类型;2 2假设字段为字符型,那么通常定义假设字段为字符型,那么通常定义为定长字符串为定长字符串; ;3 3类型名和变量名的命名规那么一样。类型名和变量名的命名规那么一样。江苏计算机等江苏计算机等级考试级考试 Visual Basic 程序设计程序设计例:例:Type Student_ScoreType Student_Score Name As String Name As String* *8 8 Student_Id As String
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社会服务活动实践
- 变脸艺术文化教育活动
- 平面设计卡片制作规范
- 2026护理岗位竞聘述职演讲稿解读
- 溺水急救小课件
- 屏蔽广告策划活动流程
- 公司员工活动风采纪实
- 书籍封面设计核心要素
- 家庭教育行业概述
- 医学26年老年心血管疾病康复评定查房课件
- 2026语文新教材 2026部编版三年级语文下册第五单元 《习作:奇妙的想象》课件
- 2026年交管12123驾照学法减分完整版练习题库及1套完整答案详解
- 2025中国经皮冠状动脉介入治疗指南课件
- 2026福建福州首邑产业投资集团有限公司招聘19人考试模拟试题及答案解析
- 江苏交通控股有限公司笔试内容
- 国家义务教育质量监测八年级劳动素养综合测试题
- (二模)温州市2026届高三第二次适应性考试地理试卷(含答案)
- GB/T 28775-2021同步带传动T型梯形齿同步带轮
- GB/T 20641-2006低压成套开关设备和控制设备空壳体的一般要求
- GA/T 150-2019法医学机械性窒息尸体检验规范
- 患者跌倒的预防及管理课件
评论
0/150
提交评论