VB程序设计第七章课件_第1页
VB程序设计第七章课件_第2页
VB程序设计第七章课件_第3页
VB程序设计第七章课件_第4页
VB程序设计第七章课件_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第七章文件处理第2页本章目标掌握Visual Basic语言中的关于文件的创建、打开、调用、关闭等基本使用方法,了解文件使用的各种形式能够使用VB提供的文件系统控件方便地利用文件系统。第3页任务1登录对话框设计2(文件操作)生成一个登录对话框,等待用户输入用户名和密码,按下“登录”按钮,检查是否为有效用户名和密码,并给予响应;如果按下“注册”按钮,将该窗口中两个文本框中的内容与所有有效用户名和密码对照,如果没有相同的用户名允许注册,否则提示用户重新输入用户名和密码。第4页任务分析本次任务的目标是使用户输入的字符串与文件中的记录比较相等确认为系统用户,否则报错。如果注册,将用户输入的字符串写入文

2、件。使用何种文件打开、读取、写入和关闭。文件的内容为若干组用户名和密码,系统如何确认各组用户名和密码的分界。用户输入的用户名和密码如何与文件中的内容比较。如何确认比较的结果以及注册的新用户信息要如何写入文件。第5页任务分析该任务我们要研究以下内容文件的类型各类文件的操作方法第6页任务分析文件的类型文件的概念文件是存储在外部介质上的数据或信息的集合,用来永久保存大量的数据。 数据必须以某种特定的方式存放,这种特定的方式称为文件结构,VB的文件由记录组成,记录由字段组成,字段由字符组成。第7页任务分析文件的类型根据数据访问方式文件可分为顺序访问、随机访问和二进制访问相应的文件可分为顺序文件、随机文

3、件和二进制文件第8页任务分析各类文件的操作方法在VB中无论是什么类型的文件,其处理步骤一般都按照以下三个步骤进行打开(或创建)文件根据打开文件的模式对文件进行读写操作由内存到外设的传输叫做输出或写,而外设到内存的传输叫做输入或读。关闭文件第9页任务分析各类文件的操作方法顺序文件是最常用的一种文件类型,数据以字符的形式存储。访问规则简单,按顺序进行。写顺序文件时各种类型的数据自动转换成字符串后写入文件,读文件时既可按原来的数据类型读,也可按文本文件来一行一行、一个字符一个字符地读。在顺序文件中查找数据比较麻烦,需要按顺序逐一查找,而且不能同时对文件进行读写操作。第10页任务分析各类文件的操作方法

4、顺序文件打开文件语法:Open 文件名 ForInput Output Append Lock As #filenumber Len=BuffersizeInput:顺序输入模式,以顺序方式从文件中读取数据。Output:顺序输出模式,以顺序方式向文件中写入数据。Append:顺序输出模式。将文件指针设置在文件的结尾,所有写入的内容就添加在文件原有内容之后,Print#或Write#语句可以用于这种操作。第11页任务分析各类文件的操作方法顺序文件注意:以Input方式打开顺序文件时,该文件必须是已经存在的文件,否则会产生一个错误。但以Output或Append模式打开一个不存在的文件时,Ope

5、n语句可以先创建文件再打开。第12页任务分析各类文件的操作方法顺序文件以三种模式任意一种打开文件后,进行其他类型的操作需要重新打开这类文件时,要先关闭该文件。例如:以对Input方式打开的文件进行修改,若要保存修改后的内容,应先关闭该文件,再以Output模式打开并把文件内容写回到文件中。第13页任务分析各类文件的操作方法顺序文件读操作Input #语句语法:Input #filenumber varlist功能:返回从打开的顺序文件中读出数据并将数据复制给变量。第14页任务分析各类文件的操作方法顺序文件Input #语句只能读取以Input或Binary方式打开的文件,读出数据时,不必经过修

6、改就可直接将标准的字符串或数值数据复制给变量,输入数据中的双引号(” ”)将被忽略。第15页任务分析各类文件的操作方法顺序文件Line Input 语句语法:Line input #Filenamber Varname 功能:返回从打开的顺序文件中读出一行并分配给字符串变量。第16页任务分析各类文件的操作方法顺序文件写操作Print #语句语法:Print #Filenumber,Outputlist功能:将格式化显示的数据写入顺序文件中。Filenumber:必要的参数,任何有效的文件号。Outputlist:可选的参数。表达式或是要打印的表达式列表。第17页任务分析各类文件的操作方法顺序文

7、件Write #语句语法:Write #Filenamber,Outputlist功能:将数据写入顺序文件。第18页任务分析各类文件的操作方法顺序文件Print #和Write #的区别是:Print #写入的字符型数据不在字符串两端放置引号,而Write #在字符串两端放置引号并且自动用逗号分隔每个表达式。在最后一个字符写入文件后,插入一个新行的字符即回车换行符(Chr(13)+Chr(10)。第19页任务分析各类文件的操作方法顺序文件关闭文件语法:Close #FilenumberlistFilenumberlist:可选的参数,表示为文件号的列表,如果省略,将关闭Open语句打开的所有活

8、动文件。Close语句用于以Output和Append模式打开的文件时,语句执行后将文件缓冲区的内容全部写入文件并释放缓冲区所占用的内存。第20页任务分析各类文件的操作方法随机文件是由一条条记录所组成的集合。在随机文件中,每条记录的长度都是完全相同的,并且都有一个记录号,因而可以根据记录号计算出记录在文件中的存储位置,然后按照记录号直接读写,也就是可以随机访问,而不必像顺序文件那样要按顺序读写。需要注意的是,记录与记录之间没有特殊的分隔符号,也没有记录号。第21页任务分析各类文件的操作方法随机文件打开文件语法:Open 文件名 For RandomAccess access Lock As#

9、Filenumber Len=ReclengthRandom:随机方式读取,按记录号直接读取。access:可选的参数,打开文件所允许的操作,有3种方式,只读(read)、可写(write)和读写均可(readwrite)。第22页任务分析各类文件的操作方法随机文件读操作语法:Get #Filenumber,Recnumber,Varname功能:把记录复制到变量中。第23页任务分析各类文件的操作方法随机文件写操作语法:Put#Filenumber, Recnumber,Varname功能:把记录添加或替换到随机文件中。第24页任务分析各类文件的操作方法随机文件关闭文件语法:Close #Fi

10、lenumberlistFilenumberlist:可选的参数,表示为文件号的列表,如果省略,将关闭Open语句打开的所有活动文件。第25页任务分析各类文件的操作方法二进制文件是二进制数据的集合,它存储空间的利用率高,执行不太方便,工作量较大。二进制文件的访问与随机文件的访问相似,不同的是二进制文件以字节为单位进行读写,而随机文件以记录为单位进行读写。如果把二进制文件中的每一个字节看做是一条记录,则二进制文件就成了随机文件。第26页任务分析各类文件的操作方法二进制文件打开文件语法:Open 文件名 For Binary As #filenumber文件名:必要的参数。任何有效的文件名。Bin

11、ary:打开文件的方式为二进制方式。二进制文件一经打开,就可以同时进行读写操作,但一次读写的数据是以字节为单位的,任何类型的文件都可以以二进制的形式打开,因此二进制文件能提供对文件的完全控制。第27页任务分析各类文件的操作方法二进制文件读操作语法:Get #filenumber,renumber,varname其参数同随机文件。第28页任务分析各类文件的操作方法二进制文件写操作语法:Put#filenumber, renumber,varname其参数同随机文件。Put语句将变量的内容写入到所打开的文件的指定位置,一次写入的长度等于变量的长度。如果忽略位置参数,则表示从文件指针所指的位置开始写

12、入数据,写入后文件指针会自动后移。文件刚打开时指向第一个字节。第29页任务分析各类文件的操作方法二进制文件关闭文件语法:Close #filenumber其参数同随机文件。第30页任务实施创建新工程从工具箱中选择控件拖入窗体设置窗体及控件的属性对象控件名属性名属性值ConmmandCommand1Caption注册CmdokCaption登录第31页任务实施在代码窗口编写事件代码并保存、运行源代码Private Type record 定义自定义数据类型usename As String * 10 用户名字符的最大长度为10usemima As String * 10 密码字符的最大长度为10

13、End TypeDim myrecord As record 定义一个自定义类型的变量 Open App.Path & mima.txt For Random As #1 Len = Len(myrecord)打开文件 n = LOF(1) / Len(myrecord)求记录总个数 For i = 1 To n Get #1, i, myrecord 读取第i条记录 If txtUserName = Trim(myrecord.usename) And txtPassword = Trim(myrecord.usemima) Then 和用户输入文本框的内容比较 MsgBox 正确的用户名和

14、密码,欢迎您!, , 登录 Me.Hide Exit For 如果在某个记录比较成功,从循环中跳出 Close #1关闭文件 End If Next i 第32页任务设计完成效果第33页任务2文本和图片浏览器的设计(文件系统控件)在窗体上选中驱动器、目录以及文件夹下的某个图片文件,右端会显示该图片。如果选择的是某个文本文件就会显示文本文件内的内容。 第34页任务分析该任务我们要解决以下问题如何找到要显示或浏览的文件。文本框和图像框在同一位置显示,如何在某种条件下显示其中之一。以何种条件判断该显示文本框和图像框中的哪一个。显示文本文件和图片文件的方法。第35页任务分析该任务我们要研究以下几项内容

15、驱动器列表框(DriveListBox)目录列表框(DirListBox)文件列表框(FileListBox)第36页任务分析驱动器列表框(DriveListBox)驱动器列表框是一个下拉式列表框,是一个包含有效驱动器的列表控件,默认状态下显示当前驱动器名。运行时,该控件获得焦点时,可输入任何有效的驱动器标识符或者在DriveListBox控件的列表中选择一个有效的磁盘驱动器,若从中选定驱动器,该驱动器就出现在列表框的顶端。每当选择了新的驱动器后将触发一个Change事件。第37页任务分析DriveListBox控件的主要属性Drive属性语法:对象名. Drive =drive 功能:用于在

16、运行时设置或返回所选择的驱动器,默认值为当前驱动器,设计时不可用。第38页任务分析List属性语法:对象名. List(index) =string功能:用于设置或返回控件的列表部分的项目,列表是一个字符串数组,数组的每一项都是一个列表项目,在运行时是只读的。第39页任务分析DriveListBox控件的主要事件Change事件:用于改变所选择的驱动器,该事件在选择一个新的驱动器或通过代码改变Drive属性的的设置时发生。Private sub 对象名_Change(index As Integer)Index:一个整数,用来惟一地标识一个在控件数组中的控件。第40页任务分析DriveList

17、Box控件的主要事件Change事件:用于改变所选择的驱动器,该事件在选择一个新的驱动器或通过代码改变Drive属性的的设置时发生。Private sub 对象名_Change(index As Integer)Index:一个整数,用来惟一地标识一个在控件数组中的控件。第41页任务分析目录列表框(DirListBox)目录列表框可以显示指定驱动器上的目录结构,一般从根目录开始显示用户系统的当前驱动器目录结构。当前目录名被突出显示,而且显示的目录是按目录层次依次缩进,在目录列表框中,当前目录的子目录也缩进显示。在列表框中上、下移动时,将依次突出显示每个目录项第42页任务分析DirListBox

18、控件的主要属性List属性语法:对象名. List(index) =string 功能:用于设置或返回控件的列表部分的项目,列表是一个字符串数组,数组的每一项都是一个列表项目,在运行时是只读的。第43页任务分析ListIndex属性语法:对象名. ListIndex =index功能:用于在设置或返回控件中当前选择项目的索引,在设计时不可用。index:数值表达式,指定当前项目的索引号。注意:DirListBox和DriveListBox不同的是,DirListBox并不在操作系统级设置当前目录,而只是突出显示目录并将其ListIndex设置为-1。第44页任务分析Path属性语法:对象名.P

19、ath=Pathname功能:用于返回或设置当前路径。在设计时不可用。Pathname:一个用来计算路径名的字符串表达式。注意:Path属性的值是一个指示路径的字符串,例如:C:programVB98或C:WindowsSystem。对于DirListBox控件,在运行时当控件被创建时,其默认值是当前路径。第45页任务分析文件列表框(FileListBox)用于将属性指定的目录下所选文件类型的文件列表显示出来,一般和DriveListBox、DirListBox控件一起使用。第46页任务分析FileListBox控件的主要属性FileName属性语法:对象名. FileName =Pathna

20、me功能:用于设置或返回所选文件的文件名,在设计时不可用。 注意:FileName属性和CommonDialog控件的FileName属性不同,不包含路径名。将FileListBox控件的Path属性和FileName属性中的字符串连接起来可获得带路径的文件名。如果Path属性的最后一个字符不是目录分隔号(),应在连接两个属性值的字符串中加入一个“”符号。第47页任务分析Path属性语法:对象名.Path=Pathname功能:用于返回或设置当前路径。在设计时不可用。Pattern属性语法:对象名.Pattern=Value功能:用于返回或设置一个值,指示运行时显示在FileListBox控件中的文件的扩展名。第48页任务分析FileListBox控件的主要事件PathChange事件当路径被代码中的FileName或Path属性的设置所改变时,Path

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论