visual basic文件

上传人:第*** 文档编号:49289065 上传时间:2018-07-26 格式:PPT 页数:25 大小:1.45MB
返回 下载 相关 举报
visual basic文件_第1页
第1页 / 共25页
visual basic文件_第2页
第2页 / 共25页
visual basic文件_第3页
第3页 / 共25页
visual basic文件_第4页
第4页 / 共25页
visual basic文件_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《visual basic文件》由会员分享,可在线阅读,更多相关《visual basic文件(25页珍藏版)》请在金锄头文库上搜索。

1、第10章 文 件10.1 顺序文件 10.2 随机文件 10.3 文件系统控件文件:存储在外部介质上数据的集合。 按名存取 1. 记录 由若干个相互关联的数据项组成。 例如,由学生的学习成绩信息组成的记录:数据项2. 文件及其种类 文件是记录的集合。 顺序访问模式:顺序文件,记录可长可短; 随机访问模式:随机文件,记录的长度相同; 二进制访问模式:二进制文件(可认为记录长度为1)。使用传统方法处理文件 P153(1) 顺序文件 按顺序依次把记录写入文件; 按顺序依次把记录读出来。文本文件:一行一条记录,记录可长可短,以“换行”字 符为分隔符号。 (2) 随机文件 随机文件可以直接访问文件中的任

2、意一个记录。 记录长度相同; 根据记录号访问;(3) 二进制文件 直接把二进制码存放在文件中。1. 打开文件Open 文件名 For 模式 As # 文件号 Len=记录长度 (1) 模式OUTPUT:写操作; INPUT:读操作;APPEND:追加到文件末尾。 (2) 文件号 1511,可以用FreeFile函数获得下一个可利用的 文件号。 (3) 记录长度小于或等于32767的整数,它指定数据缓冲区的大小。例如,打开C:VBSCORE,供写入数据,指定文件号为#1。 OPEN “C:VBSCORE“ FOR OUTPUT AS #110.1 顺序文件 P130打开文件读出或写入关闭文件2.

3、 写入命令 Print #文件号,输出列表保存文本框假定文本框的名称为Text1,文件名为TEST.DAT。 方法1:把整个文本框的内容一次性地写入文件。 Open “TEST.DAT“ For Output As #1 Print #1, Text1 Close #1方法2:把整个文本框的内容一个字符一个字符地写入文 件。 Open “TEST.DAT“ For Output As #1 For i=1 To len(Test1) Print #1,Mid(Text1, i, 1); Next i Close #1Write #文件号,输出列表紧凑格式。数据项之间插入“,”,并加上双引号。

4、例如,命令:Write #1,“One“,“Two“,123 内容:“One“,“Two“,1233. 关闭文件 Close #文件号, #文件号. 例如,Close #1, #2, #34. 读顺序文件 INPUT #文件号,变量列表把读出的每个数据项分别存放到所对应的变量。LINE INPUT #文件号,字符串变量读一行到变量中,主要用来读取文本文件。INPUT$(读取字符数,#文件号)随意读取字符 5. 函数 LOF(文件号):返回文件的长度(总字节数) 。 EOF(文件号):返回读写位置。 指针在文件尾时,EOF函数为True,否则为 False。读文本文件到文本框 假定文本框名称为T

5、ext1,文件名为MYFILE.TXT。 方法1:一行一行读 Text1.Text “ Open “MYFILE.TXT“ For Input As #1 Do While Not EOF(1) Line Input #1, InputData Text1.Text Text1.Text + InputData+vbCrLf Loop Close #1方法2:一次性读 Text1.Text “ Open “MYFILE.TXT“ For Input As #1 Text1.Text = Input$( LOF(1), 1) Close #1 方法3:一个个字符读 Dim InputData a

6、s String*1 Text1.Text “ Open “MYFILE.TXT“ For Input As #1 Do While Not EOF(1) InputData= Input$(1,#1) Text1.Text Text1.Text + InputData Loop Close #110.2 随机文件 P1561. 打开 Open 文件名 For Random As #文件号 Len= 记录长度 2. 写操作 Put #文件号,记录号,变量名将一个记录变量的内容写到指定的记录位置处。 忽略记录号,则表示在当前记录后的位置插入一条记录。 3. 读操作 Get #文件号,记录号,变量

7、名忽略记录号,则读出当前记录后的那一条记录。P157 例题10-51. 打开 Open 文件名 For Binary As #文件号 2. 写操作 Put #文件号,位置,变量名 写入长度等于变量长度的数据。 3. 读操作 GET #文件号,位置,变量名从指定位置开始读出长度等于变量长度的 数据存入变量中,数据读出后移动变量长度位置,如 果忽略位置,则表示从文件指针所指的位置开始读出 数据,数据读出后移动变量长度位置。补充: 二进制文件例1 文件复制Dim char As Byte Dim FileNum1,FileNum2 as Integer FileNum1 = FreeFile 打开源

8、文件 Open “C:STUDENT.DAT“ For Binary As # FileNum1 FileNum2 = FreeFile 打开目标文件 Open “C:STUDENT.BAK“ For Binary As # FileNum2 Do While Not EOF(FileNum1) Get #1, , char 从源文件读出一个字 节 Put #2, , char 将一个字节 写入目标文件 Loop Close #FileNum1 Close #FileNum210.3 文件系统控件 P159Sub drvDrive_Change()dirDirectory.Path = drv

9、Drive.Drive End SubSub dirDirectory_Change()filFile.Path = dirDirectory.Path End SubSub Form_Load()Item = “所有文件(*.*)”cboType.AddItem Item + Space(20 - Len(Item) + “*.*“Item = “窗体文件(*.FRM)“cboType.AddItem Item + Space(20 - Len(Item) + “*.FRM“Item = “位图文件(*.BMP)“cboType.AddItem Item + Space(20 - Len(I

10、tem) + “*.BMP“cboType.ListIndex = 2 End Sub Sub cboType_Click()filFile.Pattern = Mid(cboType.Text, 21) End SubSub filFile_Click( ) End SubSub filFile_DblClick( ) End Sub1. 驱动器列表框 P159 Drive属性:对象.Drive = drive Change事件:重新设置Drive属性引发Change事件2. 目录列表框 P160 Path属性 :对象.Path = pathname Change事件:重新设置Path 属性

11、引发Change事件3. 文件列表框 P160Path属性:显示该路径下的文件。重新设置Path属性引发PathChange事件。Pattern属性:显示的文件类型。对象.Pattern = value重新设置Pattern属性引发PatternChange事件。例如:filFile.Pattern = “*.frm“,显示*.frm文件。多个文件类型用分号;分界。例如: “*.frm;*.frx“FileName属性:对象.FileName = pathname引用时只返回文件名,相当于ilFile.List(filFile .ListIndex), 需用Path属性得到其路径;设置时可带路

12、径。Click、DblClick事件:例如,单击输出文件名。 Sub filFile_Click( )MsgBox filFile.FileName End Sub例如,双击执行可执行程序: Sub filFile_DblClick( )ChDir (dirDirectory.Path) 改变当前目 录 RetVal = Shell(filFile.FileName, 1) 执 行程序 End Sub小 结1文件及其结构记录是计算机处理数据的基本单位,文件是记录的集合。按到文件 的存取方式及组成结构,文件分为顺序文件和随机文件;按到文件中数 据的编码方式,文件分为ASCII文件和二进制文件。例

13、1在随机文件中,必须_。A每条记录都不一样 B每条记录都样长 C排序 D记录长度不等答案:B分析:随机文件与顺序文件的一个区别是要求所有的记录都一样长。 2顺序文件的创建与存取写文件:将数据写入顺序文件通常有三个步骤:打开、写入和 关闭。一般用Open方法打开文件,用“Print# 文件号,数据”语句和 “Write# 文件号,数据”写人数据,用Close方法关闭文件。读文件:与写顺序文件样,在读顺序文件时要用Open方法 打开文件,只不过这时的文件的打开模式为INPUT,打开文件后有 三种读文件的方式:Input、Line Input、Input$,第一种方式是将 每个数据项分别读到对应的变

14、量中;第二种方式也是读到变量中, 只不过文件中的数据项是以Enter或Return字符分开,而不是以逗 点分开;第三种方式是读取任意个字符。与读文件(包括随机文件)有关的函数有三个:LOF(返回文件的 长度)、LOC(返回打开文件的读写位置)、EOF(返回一个文件指针 是否到达文件末尾的标志)例1下列命令中_可实现对顺序文件的写操作。APrint BLine Input CInput DPut例2要对顺序文件进行写操作,下列打开文件语句中正确的是 _。AOpen “File1.txt“,ForOutput As #1BOpen “File1.txt“,Forlnput AS #1COpen “

15、File1.txt“,ForRandom AS #1DOpen “File1.txt“,ForBinary AS #1答案:A 分析:Line Input和Input实现的是对顺序文件的读操作,Put只对 随机文件有效。答案:A 分析:顺序文件有三种打开模式:Output模式(写数据模式)、Input 模式(读数据模式)和Append模式(追加数据模式),所以Output和 Append模式都属于写的范畴。例3下面对语句:Open “Text.dat“,For Output As #FreeFile的功能描述中, 错误的是_。A以顺序输出的模式打开文件“Text.dat“B如果文件“Text.dat“不存在,则建立一个新文件C如果文件“Text.dat“存在,则打开文件,新写入数据将添加到该文件中D如果文件“Text.dat“存在,则打开文件,新写人数据将覆盖原有的数据例4下列说法中,不正确的是_。A当程序正常结束时,所有没有用Close关闭的文件都会自动关闭B在关闭文件或程序结束前,可以不用Unlock对已锁定的记录解锁C可

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 职业教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号