版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第9章 文件处理第9章 文件处理q9.1 文件系统控件q9.2 File System Object模型介绍q9.3 传统文件存取操作第9章 文件处理q9.1 文件系统控件q9.2 File System Object模型介绍q9.3 传统文件存取操作9.1 文件系统控件n驱动器列表框n目录列表框n文件列表框n文件系统控件组合使用n文件操作语句和函数n 驱动器列表框n驱动器列表框(DriveListBox)是下拉式列表框,其系统默认名为Drive1。n 驱动器列表框n设置驱动器有以下三种方法:(1)直接在驱动器列表框中输入有效的驱动器标识符,也可单击驱动器列表框右侧的箭头,在下拉列表框中选定新
2、驱动器,缺省时显示系统当前驱动器。(2)在代码中用Drive 属性来设置当前驱动器。格式:Object.Drive = DriveName其中,Object参数为驱动器列表框的名称;DriveName参数为驱动器名,如果省略则为系统当前默认驱动器。n 驱动器列表框n设置驱动器有以下三种方法:(3)在代码中用ChDrive 语句设置驱动器。格式:ChDrive DriveName其中,假设设置当前驱动器为D,可用语句Drive1.Drive = “D:” 或 ChDrive “D” 。如果要自动地变更当前的工作驱动器,则可使用语句ChDrive Drive1.Drive。 n 目录列表框n目录列
3、表框(DirListBox)用于显示用户系统上的当前驱动器或指定驱动器上的目录结构,其系统默认名为Dir1。 n 目录列表框n目录列表框中的每一个目录都关联着一个唯一的标识符ListIndex,通过该标识符可区别目录列表框中的每一个目录。n当前指定的目录总是ListIndex 值为 1。紧邻其上的目录ListIndex 值为 2,再上一个为 ListIndex值为 3;紧邻其下的子目录中,第一个子目录ListIndex 值为 0,第二个子目录ListIndex 值为 1;依次类推。 n 目录列表框n设置目录有以下三种方法:(1)直接在目录列表框中选择目录,缺省时显示系统当前目录。(2)在代码中
4、用Path 属性来设置当前目录。格式:Object.Path = Pathname其中,Object为目录列表框的名称;PathName参数设置目录名,如果省略则为系统当前默认路径。n 目录列表框n设置目录有以下三种方法:(3)在代码中用ChDir 语句设置驱动器。格式:ChDir Pathname假设设置当前目录为C:programe file,可用语句Dir1.Path = C:programe file 或ChDrive C:programe file ; n 文件列表框n文件列表框常与目录列表框配合使用,来显示指定目录下的文件列表,在文件列表框中选择要操作的一个或多个文件, 其系统默认
5、名为File1 。n 文件列表框n文件列表框常用属性有:nPath 属性:设置或返回在文件列表框中显示的文件路径。 nPattern 属性:设置在文件列表框中要显示的文件类型。 nArchive、Normal、System、Hidden 和 ReadOnly属性:在文件列表框中指定要显示的文件类型。 n 文件列表框属性名功能Archive 是否显示“档案”属性文件Normal 是否显示“常规”属性文件System 是否显示“系统”属性文件Hidden 是否显示“隐藏”属性文件ReadOnly 是否显示“只读”属性文件表9-1文件类型属性功能 n 文件系统控件组合使用n通常驱动器列表框、目录列表
6、框和文件列表框一起使用,在显示信息时同步。若产生此效果,需要有两个Change事件。1.驱动器列表框的Change 事件 ,代码如下:Private Sub Drive1_Change ()Dir1.Path = Drive1.DriveEnd Sub2.目录列表框的Change 事件,代码如下:Private Sub Dir1_Change ()File1.Path = Dir1.PathEnd Sub n 文件系统控件组合使用【例91】图片浏览器。n 运行结果n 程序代码n 文件操作语句和函数1文件操作语句(1)MkDir 语句: 创建一个新的目录或文件夹。格式:MkDir (2)RmDi
7、r 语句:删除一个存在的目录或文件夹。格式:RmDir path注意:RmDir语句只能删除空的子目录或文件夹,不能删除根目录或当前目录。(3)Kill 语句: 从磁盘中删除已关闭的文件。格式:Killpathn 文件操作语句和函数1文件操作语句(4)FileCopy 语句:复制一个已关闭的文件。格式:FileCopy source, destination(5)Name 语句: 对已关闭的文件或目录重新命名。格式:NameoldpathnameAsnewpathnamen 文件操作语句和函数2文件操作函数(1)CurDir 函数:返回指定驱动器的当前目录路径。格式:DirName = Cur
8、Dir ( drivename )(2)GetAttr 函数:返回指定文件属性对应的整型值格式: RetValue = GetAttr()n 文件操作语句和函数整数值 属性名功能0Normal “常规”属性文件 1ReadOnly“只读”属性文件 2Hidden “隐藏”属性文件4System“系统”属性文件16目录或文件夹32Archive “档案”属性文件 表9-2 文件属性与对应整数值n 文件操作语句和函数2文件操作函数(3)FileLen 函数:以字节为单位返回指定未打开文件的长度,类型为长整型。格式:RetValue = FileLen ()(4)Lof函数:返回指定的已打开的文件的
9、字节长度。格式:Length = Lof ()(5)Eof函数:测试文件指针是否到了文件尾。格式:RetValue = Eof ()若到了文件尾,则函数返回值为True;若未到文件尾,则函数返回值为False。n 文件操作语句和函数2文件操作函数(6)Loc函数:返回上一次从打开文件中读写数据的位置。格式:RecNo = Loc ()对于顺序文件,该函数返回从文件中被打开以来读写数据块的个数,一个数据块默认长度为128字节;对于随机文件,该函数返回上一次读写记录的记录号;对于二进制文件,该函数返回上一次读写数据的最后一个字节的位置。n 文件操作语句和函数2文件操作函数(7)Seek函数:返回已
10、打开文件中指针的当前位置。格式:CurRecNo =Seek ()对于顺序文件和二进制文件,该函数返回当前要读写数据的字节位置;对于随机文件,该函数返回当前要读写记录的记录号。第9章 文件处理q9.1 文件系统控件q9.2 File System Object模型介绍q9.3 传统文件存取操作9.2 File System Object模型介绍nVisual Basic 6.0的一个新功能是 File System Object (FSO) ,即文件系统对象模型。n该模型提供了一个基于对象的工具来处理文件夹和文件。这使用户除了使用传统的 Visual Basic 语句和命令之外,还可以使用所熟
11、悉的带有一整套属性、方法和事件的 object.method 语法来处理文件夹和文件。 9.2 File System Object模型介绍nFSO对象模型包含的对象n创建和访问FSO对象 n驱动器对象n文件夹对象n文件对象n用FSO对象创建文件并读写数据n FSO对象模型包含的对象nFSO 对象模型包括以下对象:lFileSystemObject:提供对计算机文件系统的访问,该组的主要对象提供一整套用于创建、删除、收集相关信息、以及通常的操作驱动器、文件夹和文件的方法。 lDrive:对特定磁盘驱动器或网络共享的属性提供访问,收集关于系统所用的驱动器的信息。lFolder:提供对一个文件夹所
12、有属性的访问,允许创建、删除或移动文件夹,并向系统查询文件夹的名称、路径等。n FSO对象模型包含的对象nFSO 对象模型包括以下对象:lFiles:在一个文件夹内的所有 File 对象的集合,允许创建、删除或移动文件,并向系统查询文件的名称、路径等。lTextStream:加快对文件的顺序访问,允许用户读和写文本文件。n FSO对象模型包含的对象n可通过“对象浏览器”查看FSO模型中的对象、集合、属性、方法和事件的信息。 n FSO对象模型包含的对象在在“工程工程”菜单中选择菜单中选择“引用引用”选项,打开选项,打开“引用引用”对话框。对话框。在在“引用引用”对话框中,选择对话框中,选择“M
13、icrosoft Scripting Runtime”。在在“视图视图”菜单中选择菜单中选择“对象浏览器对象浏览器”(或按(或按F2)即可看到)即可看到FSO对象模型的信息。对象模型的信息。n 创建和访问FSO对象nFSO 对象模型编程包括三项主要任务: l使用CreateObject 方法,或将一个变量声明为 FileSystemObject 对象类型来创建一个 FileSystemObject 对象。l对新创建的对象使用适当的方法。l访问该对象的属性。n 创建和访问FSO对象1通过将变量声明为 FileSystemObject 对象类型创建 FSO 对象。 n在“引用”对话框中选择“Mic
14、rosoft Scripting Runtime”选项,这是将变量声明为FSO对象的必要条件。n在VB的代码窗口中输入下列格式的代码:Dim As New FileSystemObject n 创建和访问FSO对象2使用 CreateObject 方法来创建一个 FileSystemObject 对象 。 n格式:Set = CreateObject (Scripting.FileSystemObject)n其中,Scripting参数是FSO文件系统对象类型库的名称。FileSystemObject参数指定要创建一个实例的对象名称。CreateObject参数有两种类型,CreateFold
15、er创建文件夹,CreateTextFile创建文本文件。FSO对象模型不支持创建和删除驱动器。 n 创建和访问FSO对象3访问 FSO 对象n访问已有的驱动器、文件夹和文件访问,分别用GetDrive、GetFolder和 GetFile方法;n而对于新建FSO对象,直接对其操作即可访问到相关信息。 n 驱动器对象1驱动器对象的属性属性名功能TotalSize以字节为单位表示驱动器总容量AvailableSpace 或 FreeSpace以字节为单位表示驱动器可用空间容量DriveLetter只读,返回某个物理本地驱动器或网络共享的驱动器名,若指定的驱动器没有同某个驱动器字母关联起来,返回一
16、个 0 字节长度的字符串 ()SerialNumber驱动器序列号,返回唯一标识磁盘卷标的十进制序列号,以确保正确的磁盘已插入到某个带有可删除媒体的驱动器中FileSystem返回指定驱动器使用的文件系统类型,如 FAT、 FAT32DriveType返回一个值,表示指定驱动器的类型,如固定驱动器、 CD-ROM、RAMIsReady驱动器是否可用,若指定的驱动器已准备好,返回 True;否则返回 FalsePath 或 RootFolder返回指定文件、文件夹、或驱动器的路径;对于驱动器字母来说,不包括根驱动器。 如C 驱动器的路径是 C:,而不是 C: 。ShareName返回指定驱动器的
17、网络共享名VolumeName设置或返回指定驱动器的卷标名n 驱动器对象【例93】 查看所选驱动器的有关信息。 n 运行结果n 程序代码n 文件夹对象表9-4 文件夹对象常用方法方 法功能FileSystemObject.CreateFolder创建一个文件夹Folder.Delete 或FileSystemObject.DeleteFolder删除一个文件夹Folder.Move 或FileSystemObject.MoveFolder移动一个文件夹Folder.Copy 或FileSystemObject.CopyFolder复制一个文件夹Folder.Name检索文件夹的名称FileSy
18、stemObject.FolderExists查找一个文件夹是否在驱动器上FileSystemObject.GetFolder获得已有Folder对象的一个实例FileSystemObject.GetParentFolderName找出一个文件夹的父文件夹的名称FileSystemObject.GetSpecialFolder找出系统文件夹的路径n 文件夹对象表9-5 文件夹对象常用属性属 性功 能Attributes设置或返回文件夹的读写性质DateCreated返回文件夹的创建日期DateLastAccessed返回访问文件夹的最后日期DateLastModified返回修改文件夹的最后日
19、期Drive返回文件夹的驱动器位置Files返回文件夹中的文件集合IsRootFolder判断文件夹是否为根文件夹Name设置或返回文件夹的名称Parentfolder返回文件夹的父文件夹Subfolder返回文件夹中的子文件夹集合Path返回文件夹的路径Size返回文件夹中的子文件夹和文件所占磁盘空间容量Type返回文件夹的类型n 文件夹对象【例95】使用 Folder 对象获得其信息,并创建、删除文件夹。n 运行结果n 程序代码n 文件对象n文件(File)对象提供对文件所有属性的访问。 表9-6 File对象方法方 法功能File.Move 或FileSystemObject.MoveF
20、ile移动一个文件File.Copy 或FileSystemObject.CopyFile复制一个文件File.Delete 或FileSystemObject.DeleteFile删除一个文件n 文件对象【例96】查看所选文件的有关信息。n 运行结果n 程序代码n 文件对象【例97】利用FSO对象更名、删除文件。n窗体设计:在窗体上分别添加一个驱动器控件Drive1、文件夹控件Dir1和文件控件File1,然后再添加三个命令控钮,其Caption属性分别为删除、更名和退出。 n 文件对象【例97】利用FSO对象更名、删除文件。n 运行结果n 程序代码n 用FSO对象创建文件并读写数据n用FS
21、O对象创建的文件是顺序文件,它不支持创建随机文件和二进制文件;n要创建随机文件和二进制文件,应使用带Random和Binary标志的Open命令。n 用FSO对象创建文件并读写数据n创建方法有三种:1用 CreateTextFile 方法。2用带ForWriting 标志的OpenTextFile 方法。3用带 ForWriting 标志的 OpenAsTextStream 方法。n 用FSO对象创建文件并读写数据【例98】用FSO对象创建文件,向文件添加数据,最后关闭文件。n 运行结果n 程序代码第9章 文件处理q9.1 文件系统控件q9.2 File System Object模型介绍q9
22、.3 传统文件存取操作9.3 传统文件存取操作n访问顺序文件n访问随机文件n访问二进制文件n 访问顺序文件1打开顺序文件n格式:Open For Input | Output | Append As Len = buffersizeFilename参数指定要打开文件的文件名Input参数以从文件读取数据的模式打开文件。以此形式打开文件时,该文件必须已存在;Output参数以向文件写入数据的模式打开文件。以此形式打开文件时,若该文件已存在,则从文件开始位置写入数据,新数据将覆盖原数据;若该文件不存在,则自动创建一个新文件,并从文件开始位置写入数据;Append参数以向文件尾部追加数据的模式打开文
23、件。以此形式打开文件时,若该文件已存在,则从文件尾部写入新数据,而文件中原有数据保留不变;若该文件不存在,则自动创建一个新文件,并从文件开始位置写入数据。Filenumber参数为必选项,给打开的文件指定文件号,其取值范围为1-511之间的整数。Len = buffersize参数为可选项,在文件与程序间复制数据时指定缓冲区的字符数。n 访问顺序文件2向顺序文件写数据 (1)Write语句n格式:Write ,OutputlistFilenumber参数为必选项,打开文件时指定的文件号Outputlist参数为可选项,写入文件的数据列表,数据间用逗号、空格或分号隔开n 访问顺序文件2向顺序文件
24、写数据 (2)Print语句n格式:Print , Spc(n)| Tab(n) ;| ,Filenumber参数为必选项,打开文件时指定的文件号Spc(n)参数设置数据之间空格数Tab(n)参数设置数据在第n列位置写入分号;参数表示各数据采用紧凑格式写入,数据之间无分隔符逗号,参数表示每个数据占用一个打印区,一个打印区宽度为14个字符Outputlist参数为可选项,写入文件的数据列表,数据间用逗号、空格或分号隔开n 访问顺序文件3从顺序文件读数据(1)Input语句n格式:Input ,Filenumber参数为必选项,打开文件时指定的文件号Varlist参数用来保存从文件中读取的数据的变
25、量表。变量间用逗号分隔,变量的类型和个数应与从文件中读取的数据类型和个数一致n 访问顺序文件3从顺序文件读数据(2)Line Input语句n格式:Line Input ,nLine Input语句是将指定文件中两个硬回车间的数据读取,即以段为单位读取信息,包括软回车。其常用Eof()函数来测试是否到文件尾。 Filenumber参数为必选项,打开文件时指定的文件号Varname参数用于保存从文件读取的数据的变量名称n 访问顺序文件4关闭顺序文件n格式:Close Filenumberlistn文件以Input 、Output或 Append其中任何一种方式打开后,若想以另外一种方式打开,都必
26、须先关闭它。Filenumberlist参数表示要关闭的文件的文件号列表。各文件号间用逗号分隔,缺省时表示关闭所有已打开的文件。n 访问顺序文件【例99】 对一顺序文件实现显示、修改和存储功能。n 运行结果n 程序代码n 访问随机文件1打开随机文件n格式:Open For Random As Len = ReclengthFilename参数为必选项,指定要打开文件的文件名,可包含驱动器和目录For Random参数为可选项,表示以随机访问的方式打开文件Len = Reclength参数为可选项,指定每个记录的长度n 访问随机文件2向随机文件写数据n格式:Put , Recnumber ,Filename参数为必选项,指定要打开文件的文件名,可包含驱动器和目录Recnumber参数指定要写入或替换的记录的记录号,若省略,则指当前记录的记录号Varname参数设置保存数据的复合变量名,其类型必须与随机文件中的记录类型一致n 访问随
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度知识产权许可合同:某科技创新企业专利技术授权
- 《MCU多点处理单元》课件
- 2024年度土地使用权转让合同:土地使用权人与受让人之间的土地使用权转让协议
- 《股市的基础常识》课件
- 2024年度广告制作与发布合同协议书
- 2024中国移动山东公司春季校园招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2024中国石化校园招聘3500人易考易错模拟试题(共500题)试卷后附参考答案
- 2024年度商务出行出租车包车合同
- 2024中国国际航空股份限公司招收高中飞行学生140人易考易错模拟试题(共500题)试卷后附参考答案
- 2024中交集团公开招聘所属企业高管2人易考易错模拟试题(共500题)试卷后附参考答案
- 光伏组件拆卸及转运方案(二)
- 建国集团财务制度汇总
- 安装工程预算照明配管配线
- 技术响应文件
- 任现职以来教学改革情况
- 工程施工管理协议书(共7页)
- 换铺长钢轨施工方案(工机段版)
- 解一元一次方程复习课PPT精品文档
- 毕业设计(论文)基于PLC自动门控制系统的设计
- 铸造用高纯生铁
- 译林版五上英语改一般疑问句、否定、特殊句
评论
0/150
提交评论