




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室2本章要点:本章要点:l掌握文件系统控件;掌握文件系统控件;l掌握掌握VBVB中文件的概念、种类及其结中文件的概念、种类及其结构;构;l掌握顺序文件的操作:打开、读掌握顺序文件的操作:打开、读/ /写、写、关闭;关闭;l了解文件操作的常用函数。了解文件操作的常用函数。黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室3l文件:存储在外部介质上数据的集合。文件:存储在外部介质上数据的集合。l按名存取按名存取l磁盘文件是由数据记录组成。磁盘文件是由数据记录组成。l记录是计算机处理数据的基本单位记录是计算机处理数据的基
2、本单位数据项数据项学号学号 姓名姓名 数学成绩数学成绩 语文成绩语文成绩 物理成绩物理成绩 总分总分 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室4l文件分类文件分类l根据文件的存取方式及其组成结构,将根据文件的存取方式及其组成结构,将文件分成文件分成3 3种类型:种类型:(1 1)顺序文件)顺序文件(2 2)随机文件)随机文件(3 3)二进制文件)二进制文件黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室5l顺序文件顺序文件 顺序文件(顺序文件(Sequential FileSequential File)是)是普通的文本文件。顺序文件中的记普通的文本
3、文件。顺序文件中的记录按顺序一个接一个地排列。读写录按顺序一个接一个地排列。读写文件存取记录时,都必须按记录顺文件存取记录时,都必须按记录顺序逐个进行。一行一条记录(一项序逐个进行。一行一条记录(一项数据),记录可长可短,以数据),记录可长可短,以“换行换行”字符为分隔符号。字符为分隔符号。黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室6l随机文件(随机文件(Random Access FileRandom Access File)是可)是可以按任意次序读写的文件,其中每个记以按任意次序读写的文件,其中每个记录的长度必须相同。在这种文件结构中,录的长度必须相同。在这种文件结
4、构中,每个记录都有其唯一的一个记录号,读每个记录都有其唯一的一个记录号,读取数据时,只要知道记录号,便可以直取数据时,只要知道记录号,便可以直接读取记录。接读取记录。 记录1记录2记录3记录N黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室7l二进制文件二进制文件直接把二进制码存放在文件中直接把二进制码存放在文件中在程序中可以按任何方式组织和访问数在程序中可以按任何方式组织和访问数据,对文件中各字节数据直接进行存取。据,对文件中各字节数据直接进行存取。任何文件都可以用二进制模式访问。任何文件都可以用二进制模式访问。黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教
5、研室8l驱动器列表框驱动器列表框l目录列表框目录列表框l文件列表框。文件列表框。 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室9DriveDrive属性属性:在运行时返回或设置所选定在运行时返回或设置所选定的驱动器。该属性在设计时不可用的驱动器。该属性在设计时不可用, ,只只能在程序中被引用或设置。能在程序中被引用或设置。 驱动器列表框名驱动器列表框名.Drive= .Drive= 驱动器名驱动器名 例:Drive1.drive=“D:”Drive1.drive=“D:”黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室10lChangeChange事件事
6、件:程序运行时,当选择一个程序运行时,当选择一个新的驱动器或通过代码改变新的驱动器或通过代码改变DriveDrive属性的属性的设置时触发。设置时触发。l例例9-19-1黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室11l显示当前驱动器目录结构及当前目录下显示当前驱动器目录结构及当前目录下的所有子文件夹(子目录),供用户选的所有子文件夹(子目录),供用户选择其中一个目录作为当前目录,如图择其中一个目录作为当前目录,如图黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室12PathPath属性属性 :返回或设置当前路径。:返回或设置当前路径。l格式:格式:目录
7、列表框名目录列表框名.Path= .Path= 路径名字符串路径名字符串l例:例:Dir1.Path= C:Dir1.Path= C:MydirMydir 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室13当前目录当前目录紧邻其上的目录紧邻其上的目录再上一个再上一个黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室14ChangeChange事件事件l在程序运行时,每当改变当前目录,即在程序运行时,每当改变当前目录,即目录列表框的目录列表框的PathPath属性发生变化时触发。属性发生变化时触发。l例例9-29-2黑龙江中医药大学黑龙江中医药大学 计算机基础
8、教研室计算机基础教研室15Path Path 属性属性l显示该路径下的文件。显示该路径下的文件。l重新设置重新设置PathPath属性引发属性引发PathChangePathChange事事件。件。l例:例:File1.path=“C:Windows”File1.path=“C:Windows”黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室16PatternPattern属性属性l返回或设置文件列表框所显示的文件类返回或设置文件列表框所显示的文件类型。缺省时表示所有文件。型。缺省时表示所有文件。l例:例:File1.Pattern= File1.Pattern= * *.t
9、xt .txt File1.Pattern= ?.txt File1.Pattern= ?.txt File1.Pattern File1.Pattern = = * *.txt.txt ; * *.doc .doc 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室17FileName属性属性:l返回或设置被选定文件的文件名。返回或设置被选定文件的文件名。l该属性设计时不可用。该属性设计时不可用。lFilenameFilename属性属性不包括路径名不包括路径名。 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室18FileNameFileName属性属性:
10、黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室19ClickClick、DblClickDblClick事件事件例:单击输出文件名。例:单击输出文件名。Sub File1_Click( )Sub File1_Click( ) MsgBoxMsgBox File1.FileName File1.FileNameEnd SubEnd Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室20l例例:双击执行可执行程序:双击执行可执行程序( (记事本记事本notepad.exenotepad.exe) )Sub File1_DblClick( )Sub File
11、1_DblClick( )Dim name As StringDim name As StringIf Right(file1.path,1) = Then If Right(file1.path,1) = Then name=file1.path & file1.filename name=file1.path & file1.filenameElseElse name=file1.path & & name=file1.path & & file1.filenamefile1.filenameEnd IfEnd If n = n = Shel
12、l(nameShell(name, 1) , 1) 执行程序执行程序End SubEnd Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室21l例例:显示计算机中的文件系统。:显示计算机中的文件系统。黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室22Private Sub Private Sub Drive1_Change()Drive1_Change()Dir1.Path = Drive1.DriveDir1.Path = Drive1.DriveEnd SubEnd Sub Private Sub Private Sub Dir1_Change(
13、)Dir1_Change()File1.Path = Dir1.PathFile1.Path = Dir1.PathEnd SubEnd Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室23l编写组合框的相关代码。编写组合框的相关代码。Private Sub Form_Load()Combo1.AddItem *.*Combo1.AddItem *.frmCombo1.AddItem *.bmpCombo1.AddItem *.txtCombo1.ListIndex = 0End SubPrivate Sub Combo1_Click()File1.Pattern =
14、Trim(Combo1.Text)End Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室24l打开文件: Open 文件名 For 模式 As #文件号l模式:指定文件的打开方式 INPUT:只读操作:只读操作 OUTPUT:只写操作:只写操作 APPEND:追加到文件未尾:追加到文件未尾黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室25l文件号文件号 介于1511之间的整数 打开文件时指定文件号,文件关闭后释放文件号。 可用FreeFile函数来取得一个当前可供使用的文件号。Open 文件名 For 模式 As #文件号 黑龙江中医药大学黑龙江中
15、医药大学 计算机基础教研室计算机基础教研室26Close #Close #文件号文件号, #, #文件号文件号.例:例:l 关闭指定的文件信道关闭指定的文件信道 Close #1, #2, #3 Close #1, #2, #3l 关闭所有已打开的文件信道关闭所有已打开的文件信道 Close Close 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室27Print # Print # 或或 Write #Write #l创建新的顺序文件创建新的顺序文件Open Open 文件名文件名 For Output As #For Output As #文件号文件号Print / W
16、rite #Print / Write #文件号文件号 ,数据列表,数据列表 Close #Close #文件号文件号变量名变量名,常数。数据之间用常数。数据之间用“,”或或“;”隔开隔开黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室28l例:创建一个新的顺序文例:创建一个新的顺序文件名件名为为c:cj.datc:cj.datPrivate Sub Command1_Click()Private Sub Command1_Click() Open Open c:cj.datc:cj.dat For Output As #1 For Output As #1 Write #1
17、, Write #1, vbvb, , vcvc, , vfpvfp Write #1, 1, 80, 70, 90 Write #1, 1, 80, 70, 90 Close #1 Close #1End SubEnd Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室29保存文本框内容方法方法1:把文本框的内容一次性地写入文:把文本框的内容一次性地写入文件件。Open TEST.DAT For Output As #1Print #1, Text1Close #1方法2:把文本框的内容一个字符一个字符地写入文件。Open TEST.DAT For Output As
18、#1For i=1 To len(Text1)Print #1,Mid(Text1, i, 1);Next iClose #1黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室30lINPUT # #文件号文件号, ,变量列表变量列表把读出的每个数据项分别存放到所对把读出的每个数据项分别存放到所对应的变量。应的变量。lLINE INPUT # #文件号文件号, ,字符串变量字符串变量读一行到变量中,主要用来读取文本读一行到变量中,主要用来读取文本文件文件。lINPUT$( (读取字符数读取字符数,#,#文件号文件号) )随意读取字符随意读取字符黑龙江中医药大学黑龙江中医药大学
19、计算机基础教研室计算机基础教研室31lLOF( (文件号文件号) )返回文件的长度返回文件的长度( (总字节数总字节数) )。lEOF( (文件号文件号) )返回读写位置。返回读写位置。指针在文件尾时,指针在文件尾时,EOFEOF函数为函数为TrueTrue,否否则则为为FalseFalse。黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室32Open Open 文件名文件名 For Input As #For Input As #文件号文件号Input #Input #文件号文件号 ,变量名列表,变量名列表 Close #Close #文件号文件号说明:说明:lFor In
20、putFor Input以读取方式打开文件。以读取方式打开文件。lInput #Input #文件号文件号 ,该语句将从文件中读出数据,该语句将从文件中读出数据,并将读出的数据分别赋给指定的变量。并将读出的数据分别赋给指定的变量。 黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室33l例:从文件例:从文件c:cj.datc:cj.dat中读出数据。中读出数据。Private Sub Command1_Click()Private Sub Command1_Click()Open Open c:cj.datc:cj.dat For Input As #1 For Input A
21、s #1For i = 1 To 3For i = 1 To 3Input #1, a, b, c, dInput #1, a, b, c, dPrint a, b, c, dPrint a, b, c, dNext iNext iClose #1Close #1End SubEnd Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室34方法方法1 1:按行为单位读:按行为单位读Text1.Text Text1.Text Open MYFILE.TXT For Input As #1Open MYFILE.TXT For Input As #1Do While Not E
22、OF(1)Do While Not EOF(1)Line Input #1, Line Input #1, InputDataInputDataText1 Text1 Text1 + Text1 + InputData+vbCrLfInputData+vbCrLfLoopLoopClose #1Close #1黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室35方法方法2 2:一次性读:一次性读Text1.Text Text1.Text Open MYFILE.TXT For Input As #1Open MYFILE.TXT For Input As #1Text1.Te
23、xt = Text1.Text = Input$( LOF(1), 1)Close #1Close #1黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室36 方法方法3 3:按字符为单位读:按字符为单位读Dim Dim InputDataInputData as String as String* *1 1Text1.Text Text1.Text Open MYFILE.TXT For Input As #1Open MYFILE.TXT For Input As #1Do While Not EOF(1)Do While Not EOF(1)InputDataInputD
24、ata= Input$(1,#1) = Input$(1,#1) Text1.Text Text1.Text Text1.Text + Text1.Text + InputDataInputDataLoopLoopClose #1Close #1黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室37黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室38黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室39黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室40黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室41 P
25、rivate Sub Private Sub Form_ClickForm_Click()() Dim f1 As Integer, f2 As Integer, Dim f1 As Integer, f2 As Integer, f3 f3 As IntegerAs Integer Open c:a1.dat For Output As #1 Open c:a1.dat For Output As #1 f1 = 2 f1 = 2:f2 = 3f2 = 3 Print #1, NO.; 3, f1 Print #1, NO.; 3, f1 Print #1, NO.; 4, f2 Print
26、 #1, NO.; 4, f2 For i = 5 To 7 For i = 5 To 7 f3 = f1 + f2 f3 = f1 + f2 Print #1, NO.; i, f3 Print #1, NO.; i, f3 f1 = f2 f1 = f2 f2 = f3 f2 = f3 Next I Next I :Close #1Close #1 End Sub End SubNO. 3 2 NO. 4 3 NO. 5 5 NO. 6 8 NO. 7 13程序程序1 写出写出a1.dat文件的最终结果文件的最终结果黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室42Pr
27、ivate Sub Drive1_Change()Private Sub Drive1_Change() Dir1.Path = Drive1.Drive Dir1.Path = Drive1.DriveEnd SubEnd SubPrivate Sub Dir1_Change()Private Sub Dir1_Change() File1.Path = Dir1.Path File1.Path = Dir1.PathEnd SubEnd Sub黑龙江中医药大学黑龙江中医药大学 计算机基础教研室计算机基础教研室43Private Sub Command1_Click() Private Sub Command1_Click() 保存保存 Op
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美文美段特色课件
- 2025版高考数学一轮复习第九章算法初步统计统计案例第二节随机抽样学案文含解析新人教A版
- 商务用房租赁合同与商务短信息服务合同10篇
- 本地的空调隔音施工方案
- 低血糖昏迷的抢救与护理
- 幼儿园课程:认识各种职业
- 中国平安财产保险股份有限公司山西分公司招聘笔试真题2024
- 天津市公考真题2024
- 深圳市罗湖区区属公办中小学毕业生招聘教师笔试真题2024
- 河南郑州师范学院招聘笔试真题2024
- 能力验证课件
- 病例报告表(CRF)模板
- 计量经济学期末考试题库(完整版)及答案
- 安保工作“智能化、网格化”管理模式的建立及持续改进工作
- 履带底盘的组成介绍及各参数的计算
- 资产评估收费管理办法中评协[2009]199号
- 贾平凹《秦腔》
- 联轴器找中心PPT课件
- 加 工 贸 易 手 册
- CDP指标介绍及应用
- 浙江省建设工程施工取费定额(2003版)完整版
评论
0/150
提交评论