已阅读5页,还剩67页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第十二章 设计文件应用程序,有关的内容:不同类型文件的打开、关闭、读、写等 3个文件系统的可视化的标准控件(驱动器, 目录, 文件列表)和文件系统有关的语句和函数使用文件系统对象来访问文件(学习有关对象的属性和方法),文件的类型,文件就是保存在磁盘上的字节,不同类型的文件有不同的结构,即字节之间的关系,以及每个字节表示什么内容(是整数、字符串还是数据记录等),根据这些结构我们将文件的类型划分为三类。顺序文件顺序文件保存为一个连续块,块中的字节代表的都是文本字符,读取和写入都是字符或字符串类型数据(ANSI字符),而且都是按照顺序进行的。随机文件当一个文本文件中含有多条记录,而且每条记录有固定统一的长度时,可以实现记录的随机访问。不一定是纯文本。二进制文件二进制文件则适用于读写任意结构的文件。二进制文件中的字节可以代表任何东西。只有精确地知道数据是如何写到文件中后,才可能对它进行正确的读取或检索。,12.1 文件的读写,文件访问的步骤:使用Open语句打开文件, 指定文件号和存取方式从文件中读取数据到变量中使用或处理变量中的数据, 或者保存变量中的数据到其它文件中文件操作结束, 使用Close语句关闭文件,打开顺序文件,Open filename For Input|Output|Append As # FileNumberFileNumber指定一个有效的文件号,1511,使用FreeFile函数可以得到下一个可用的文件号,此后对文件的访问基于该文件号。可执行以下操作:Input:从文件中读取字符Output:向文件输出字符,文件原来的内容丢失Append:将字符追加到文件的最后,原内容保留Input操作的前提条件是文件必须存在;Output和Append则可以自动先创建再打开。,Input()函数,读取任意数量的字符到变量中Text1.Text = Input(LOF(filenum), filenum)第一个参数指读取字符数量,第二个参数指定文件号Input#语句,从文件中读取数据到一个或多个变量中,必须是指定格式或由Write#语句写入的数据Input #1, MyName, MyNumberLineInput#语句, 从文件中读取一行,给字符串变量Line Input #filenum, LineStringText1.Text = Text1.Text + LineString+Chr(13) + Chr(10),读取顺序文件,从文件中读取一行,【例】读取文件test.txt,结果置于一个文本框中。Open d:test.txt For Input As 1Do Until EOF(1) Line Input #1, NextLine Text1.Text = Text1.Text + NextLine + vbCrLfLoopClose #1尽管Line Input # 到达回车换行时它会识别行尾,但是,当它把整行字符串读入变量时,不会包括回车换行。如果要保留该回车换行,必须在代码中添加。,Print#语句,向文件中写入一行Print #filenumber, outputlist第一个参数指定文件号, 第二个参数为表达式Print #1, This is a testPrint #1,写入一个空行Print #1, StuNum; Tab; StuNamePrint #1, Spc(5) ; HelloPrint #1, Tab(10) ; HelloWrite#语句, 将数据写入文件(区别数据类型)Write #filenumber, outputlistWrite #1, “Hello World”, 234Write #1, strName,与Print的区别:值之间使用逗号分隔字符串使用引号括起,写入顺序文件,修改顺序文件,对于顺序文件没有提供直接修改的方法,如果要修改一个文件的内容,一般的步骤是:1)以Input方式打开文件;2)读取文件的内容到某个变量中,关闭文件;3)修改变量的值;4)以Output方式打开文件;5)将变量值写入到文件中,关闭文件结束。,Close#语句Close #1 关闭1号文件Close #1, #2, #4 关闭1号、2号和4号文件Close 关闭所有打开的文件执行Close语句后,文件与其文件号之间的关联将终结,同样的文件号可以在后面的程序中继续使用。当对文件进行写入操作时,只有使用了关闭命令,才会真正将缓冲区的文件内容写入到磁盘的文件中,同时所有与该文件相关联的缓冲区空间都被释放。,关闭顺序文件,访问顺序文件示例1,【例】读取任意指定的文本文件,进行如下处理:删除一个段落中的所有硬回车,只保留段落与段落之间的回车符(假设:某一行的第一个字符前有四个半角空格,就代表一个段落的开始)。,访问顺序文件示例,Dim strLine As String 用于保存每次读出的一行文本Dim fileNo As Integer 当前打开文件的文件号Text1.Text = Text2.Text = fileNo = FreeFile 获取当前可用的文件号 Open “d:a.txt” For Input As fileNo Do While Not EOF(fileNo) 按行循环读出文件内容 Line Input #fileNo, strLine Text1.Text = Text1.Text & strLine & vbCrLf If Left(strLine, 4) = Then 行前有四个空格 Text2.Text = Text2.Text & vbCrLf & strLine Else Text2.Text = Text2.Text & strLine End If Loop Close #fileNo,访问顺序文件示例, 将处理后的文本写入文件 Open “d:a.txt” For Output As fileNo Print #fileNo, Text2.Text Close #fileNo,访问顺序文件示例2,【例】将两个文本文件进行合并。如:1.txt + 2.txt - 3.txt Dim f_in As Integer, f_out As Integer, str As String f_out = FreeFile() 打开合并后的文件用于写 Open App.Path & all.txt For Output As f_out 打开第一个文件用于读,并写入到合并文件中 f_in = FreeFile() Open App.Path & 1.txt For Input As f_in Do While Not EOF(f_in) Line Input #f_in, str Print #f_out, str Loop Close #f_in 打开第二个文件用于读,并写入到合并文件中 Open App.Path & 2.txt For Input As f_in Do While Not EOF(f_in) Line Input #f_in, str Print #f_out, str Loop Close #f_in Close #f_out MsgBox 完成!,访问顺序文件示例3,【例】进行全班考试成绩统计,计算平均分、最高分、最低分。成绩存放在score.txt文件中(以空格分开)。,Dim f1 As Integer, i As Integer, num As Integer, score(50) As IntegerDim str As String, strArray() As String num = 0 计数,统计成绩个数 打开分数文件,逐行读取并转换到数组中 f1 = FreeFile() Open App.Path & score.txt For Input As f1 Do While Not EOF(f1) Line Input #f1, str 每行按照空格切分字符串, 切分结果在字符串数组strArray中 strArray = Split(str, ) 全部分数转换后存放到score数组中 For i = 0 To UBound(strArray) score(num) = CInt(strArray(i) num = num + 1 Next Loop Close f1,访问顺序文件示例3,min = 100 max = 0 For i = 0 To num - 1 sum = sum + score(i) If score(i) max Then max = score(i) If score(i) min Then min = score(i) 求各分数段人数 If score(i) 60 Then c1 = c1 + 1 ElseIf score(i) 70 Then c2 = c2 + 1 ElseIf score(i) 80 Then c3 = c3 + 1 ElseIf score(i) 90 Then c4 = c4 + 1 Else c5 = c5 + 1 End If Next avg = sum / num,文件长度和中文字符*,获取文件长度文件打开时:LOF(filenumber),如:LOF(1)文件没有打开是:FileLen(filename),如:FileLen(“c:a.txt”)文件长度:返回的是文件中字节的个数,而不是字符个数英文单字节编码系统(ANSI):一个字符就是一个字节中英文混合编码系统(DBCS):中文两个字节,英文一个字节统一双字节编码系统(Unicode):每个字符都占用两个字节,VB所有内部操作以此为基础但是目前的文本文件基本上是采用DBCS。VB根据长度读取文件时,有两种方式:Input(20, 1):这是按照字符的个数读取,然后自动转换为Unicode。InputB(20, 1):按字节的个数读取,不转换为Unicode(需要用StrConv函数)同样,字符串长度有两种方式:Len(“你好Hello”) 结果是7(字符的个数)LenB (“你好Hello”) 结果是14(字节的个数),访问随机文件,随机文件由记录构成,每个记录由定长的字段构成,这样很容易随机找到某个记录的某个字段随机文件中的字节构成相同的一些记录,每个记录包含一个或多个字段。为了完整地定义随机文件中的记录,我们需要用户自定义类型。因为所有记录是同样的长度,所以所有字符串字段都必须使用定长字符串类型。例如,课程记录由三个字段组成的自定义类型Course来描述,每条记录的总长度为32个字节。Type Course Name As String * 20 TeacherName As String * 10 ClassHours As IntegerEnd Type,打开随机文件,随机文件打开后既可以写,同时又允许读,这和顺序文件每次打开只能执行某一种操作不同,这种优越性就是固定了每个记录的长度所带来的。 Open filename For Random As number Len = reclength表达式Len = reclength指定了记录的长度,每次读写操作以该长度为单位进行。一般指定reclength为自定义类型变量的长度,可利用Len函数取得如果reclength比记录的实际长度短,则出错。比实际长度长,可写,但浪费了空间Reclen = Len(Stu)Open file1 For Random As filenum len = ReclenRecCount = LOF(filenum) / Reclen,Get filenumber, recnumber, varnamefilenumber:打开的顺序文件的文件号recnumber:要读取的记录号,如省略则随上次记录向下varname: 读入的变量名例如,将第10条记录取出,存放到变量Stu中:Get FileNum, 10, Stu,读取记录,Put #filenumber, recnumber, varnameRecnumber:指定记录号。它是一个可选项,如果指定了记录号,就代表从指定的记录号所在位置开始写,如果省略则表示在上一个put语句紧邻的下一个记录位置开始写入,实质上记录号指定了记录写入文件的位置。Varname:记录变量,该变量数据将写入文件。比如将变量myClass作为文件的第三个记录写入进去:myClass.Name = VB程序设计myClass.TeacherName = 张三myClass.ClassHours = 40Put #FileNum, 3, myClass,写入记录,替换随机文件中的记录,即修改记录原来的内容。替换操作不会改变文件的结构和长度。仍然使用Put语句,如修改第10条记录的姓名字段:Get FileNum, 10, StuStu.Name = “Jonh”Put FileNum, 10, Stu,替换记录,在任何位置都可以添加新记录,即写入记录,而不论该位置之前是否存在非空记录。如果需要紧邻上一记录,则只要保证记录号增1。设Reccount为原来的记录数: Reccount = Reccount + 1Put FileNum, Reccount, StuLOF(filenumber):可以返回文件的大小,可以用于计算随机文件的记录个数:recCount = LOF(1) / recLength + 1,添加记录,删除记录会改变文件长度,以上简单操作无法完成。需要使用一个临时文件,将原文件中的有效记录读取出来,写入到临时文件中,再将临时文件改名即可:Get:使用Get语句从原文件中读记录Put:使用Put语句写部分记录到临时文件Kill:使用Kill语句删除原文件Name As :将临时文件换名为原文件名,删除记录,【例】编写程序,完成一个学期教学计划的安排,包括:从课程列表框中选择一门课程,从教师列表框选择任课教师,输入课时,然后添加到课程文件中。为了提高灵活性,课程名和教师名存放在一个文本文件中,程序执行前,用户可以自行修改。,访问随机文件示例,访问随机文件示例,定义教学计划的记录类型Private Type Course Name As String * 20 TeacherName As String * 10 ClassHours As IntegerEnd Type窗体加载事件中进行界面的初始化。首先初始化课时组合框 cboHours.AddItem 24 cboHours.AddItem 32 cboHours.AddItem 40 cboHours.AddItem 50 cboHours.AddItem 60 cboHours.ListIndex = 3,访问随机文件示例,Dim strLine As String 从课程文件中读取所有课程 Open App.Path & class.txt For Input As 1 Do While Not EOF(1) Line Input #1, strLine lstClass.AddItem strLine Loop Close (1) lstClass.ListIndex = 0 从教师文件中读取所有教师 Open App.Path & teacher.txt For Input As 1 Do While Not EOF(1) Line Input #1, strLine lstTeacher.AddItem strLine Loop Close (1) lstTeacher.ListIndex = 0,访问随机文件示例, 添加课程信息到随机文件中Private Sub cmdAdd_Click()Dim recNo As IntegerDim recLength As IntegerDim myCourse As Course myCourse.Name = lstClass.Text 准备要写入文件的变量 myCourse.TeacherName = lstTeacher.Text myCourse.ClassHours = CInt(cboHours.Text) recLength = Len(myCourse) 计算记录的长度 Open App.Path & course.dat For Random As 1 Len = recLength recNo = LOF(1) / recLength + 1 计算当前新记录的记录号 Put 1, recNo, myCourse Close (1)End Sub,二进制文件中的字节可以代表任何数据(如非定长记录格式)。只有精确地知道数据是如何写到文件中后,才可能对它进行正确的读取或检索,否则只能靠人工的猜测和推理。因此对于不想直接公开的内容,程序员通常会以二进制文件来保存。二进制访问需要了解每个字节代表的含义,只有掌握了文件格式后,才能编写程序正确地读出文件。 打开文件Open filename For Binary As number 读写文件Get|Put number , recnumber, varname,访问二进制文件,12.2 VB标准文件系统控件,查看和选择文件的功能,可以通过两种控件来完成:一种是VB内部标准的文件控件,在工具箱中可以看到。提供三个控件:驱动器列表, 目录列表, 文件列表)。另一种是Windows的通用对话框控件(CommonDialog),该控件是ActiveX控件,需要加载后才能使用(第11章已介绍),驱动器列表框(DriveListBox),用户可输入或选择任何有效的驱动器标识符Drive属性, 驱动器名, 缺省值为当前驱动器Change事件, 当选择了新的驱动器或改变了Drive属性的值时, 发生该事件ListCount, List, ListIndex等属性, 与标准列表框使用相同,驱动器列表框示例,【例】将系统中所有的驱动器显示在一个带复选框的ListBox控件中。驱动器列表框:Drive1列表框:lstAllDrive,Private Sub Form_Load()Dim i As Integer For i = 0 To Drive1.ListCount - 1 lstAllDrive.AddItem Drive1.List(i) NextEnd Sub,目录列表框(DirListBox),以根目录开始, 显示目录的层次结构Path属性, 设置的路径Change事件, 选择一个新目录或改变Path属性时发生ListCount, List, ListIndex等属性, 与标准列表使用相同, 但ListIndex属性的规则不同:当前选中的路径, ListIndex=-1向上推, 依次为-2, -3, -4 .向下推, 依次为0, 1, 2, 3 .,目录列表框示例,【例】窗体中显示驱动器列表框和目录列表框,当选择某个驱动器后,该驱动器的目录列在目录列表框中;如果选择了某个目录,则在窗体上显示该目录名及其紧邻的下一级子目录的个数。,目录列表框示例,要实现题目的功能,只需响应两个事件:当前驱动器发生改变Private Sub Drive1_Change() Dir1.Path = Drive1.DriveEnd Sub当前目录发生改变Private Sub Dir1_Change()Dim str1 As String str1 = 当前目录是: & vbCrLf & Dir1.Path str1=str1 & vbCrLf & “其下级子目录的个数为:” _& Dir1.ListCount lblResult.Caption = str1End Sub,文件列表框(FileListBox),显示由Path属性指定的目录中的文件Path属性, 指定路径名Pattern属性, 指定文件类型或模式, 如*.bas, a?.txtFileName属性, 设计时不可用, 所选中文件的路径和文件名, 会影响Path和Pattern属性PathChange事件, 路径被FileName或Path属性改变时发生PatternChange事件, 列表样式被FileName或Path属性改变时发生Archive, Normal, System, Hidden, ReadOnly属性ListCount, ListIndex, Selected等与标准列表框相同,文件列表框的Pattern属性,缺省时文件列表框会显示Path属性指定目录下的所有文件,通过设置Pattern属性可以控制显示这些文件的子集,即过滤功能。例如,希望只显示后缀为.txt的文本文件,只要设置:File1.Pattern=*.txtPattern属性也接受由分号分隔的列表。例如,下列代码行将显示所有扩展名为.txt和.doc的文件:File1.Pattern = *.frm; *.bas 另外Pattern还支持“?”通配符。例如,?.txt将显示所有文件名包含三个字符且扩展名为.txt的文件。,三个控件的组合使用,以上三个控件是各自独立的,要将三个控件关联起来,需要编写两个事件过程:Private Sub Dir1_Change() File1.Path = Dir1.PathEnd SubPrivate Sub Drive1_Change() Dir1.Path = Drive1.DriveEnd Sub,组合编程示例,【例】使用文件系统的三个标准控件,来显示任何目录下的文件。同时提供文件后缀类型的选择,如*.txt、*.doc等指定类型,支持复选。,组合编程示例, 点击文本文件复选框Private Sub chkTxt_Click() Call SetFilePatternEnd Sub 设置File1的Pattern属性Private Sub SetFilePattern()Dim str1 As StringIf chkTxt.Value = 1 Then str1 = *.txt; If chkDoc.Value = 1 Then str1 = str1 If str1 Then File1.Pattern = Left(str1, Len(str1) - 1) 删除最后的分号 Else File1.Pattern = *.* End IfEnd Sub,12.3 文件系统的有关语句和函数,与驱动器、目录和文件有关的操作,比如创建目录,复制、删除文件,文件改名等。这些函数不涉及文件内容的操作。如何读出文件内容,或写一个文件以后再介绍。,改变当前驱动器,ChDrive drivedrive 必选参数,指定驱动器名, 为“”则不变drive 如果含多个字符, 则取第一个例:ChDrive “D”,取当前目录,CurDir (drive)drive:字符串表达式, 指定驱动器名无参数, 或drive=“”, 返回当前驱动器路径例:MyPath=CurDirMyPath=CurDir(“C”)MyPath=CurDir(“D”),ChDir pathpath 必选参数,指定默认目录名, 可包含驱动器名如果不指定驱动器, 则在当前驱动器上改变目录例:ChDir “Vbbooks”ChDir “D:Temp”改变驱动器的默认目录, 但不改变默认驱动器,改变当前目录,App.PathApp对象是一个全局对象, 不需要声明, 指定应用程序的有关信息Path, 返回应用程序执行文件路径Title, 返回应用程序在任务列表中的标题EXTName, 返回应用程序的执行文件名,得到当前可执行文件路径,MkDir pathpath 必选参数,指定新目录名, 可包含驱动器名如果不指定驱动器, 则在当前驱动器上建目录RmDir path同上例:MkDir “wxm”RmDir “D:data”删除目录, 必须是该目录是一个空目录, 没有文件,建立和删除目录,Kill filenamefilename 必选参数,指定文件名, 可包含路径filename 可以是包含通配符的字符串例:Kill “D:temptest.dat”Kill “D:temp*.tmp”删除文件, 必须是该文件没有正在使用,删除文件,SetAttr pathname, attributespathname 必选参数,指定文件名attributes 常数或数值表达式, 指定文件属性, 属性取值有:vbNormal, vbReadOnly, vbHidden, vbSystem, 例:SetAttr “D:data.txt”, vbReadOnly + vbHidden设置文件属性, 必须是该文件没有正在使用(打开)读取文件属性,使用GetAttr(pathname)函数,设置文件属性,FileCopy source, destinationDim SourceFile, DestinationFile SourceFile = “名单.txt DestinationFile = “名单2.txt“FileCopy SourceFile, DestinationFile,文件拷贝,Name oldpathname As newpathname重新命名文件并将其移动到一个不同的目录或文件夹中。Name 可跨驱动器移动文件。Name 不能创建新文件、目录或文件夹参数不能包括多字符 (*) 和单字符 (?) 的统配符,文件改名,返回指定参数条件的文件名或目录名Dir(pathname, attributes) Pathname:目录名,可以含有通配符Attributes:文件属性vbNormal:0vbReadOnly:1只读vbHidden:2隐藏VbSystem:4系统vbVolume:8卷标vbDirectory:16包含目录,DIR函数,MyFile = Dir(“*.TXT”, vbHidden) 取第一个隐含TXT文件名MyFile = Dir 取下一个MyPath = “c:” 取出C驱动器下所有一级目录名并显示MyName = Dir(MyPath, vbDirectory) Do While MyName If MyName . And MyName . Then If GetAttr(MyPath & MyName) = vbDirectory Then Debug.Print MyName End If MyName = Dir End IfLoop,DIR函数,FileDateTime(Filename):文件创建或最后修改日期和时间FileLen(Filename):返回打开前文件的长度(字节数FreeFile():返回一个可用的文件号EOF(filenumber):返回布尔值表明是否到达文件尾LOF(filenumber):返回文件的大小Loc(filenumber):返回文件当前的读/写位置Seek(filenumber):返回文件的当前位置Seek filenumber, position:设置文件的当前位置,影响下一次的读/写操作,其它函数和语句,12.4 使用FSO对象模型访问文件,虽然以上列出的一系列语句或函数可以全面操作驱动器、目录或文件,但它们很分散,难于记忆和使用。VB提供了一个完整的对象模型,该模型中包含了与驱动器、目录和文件等元素完全对应的一组对象,利用各个对象的属性和方法可以方便地获取文件系统的信息、处理目录和文件、以及读写顺序文件。这就是File System Object(FSO)对象模型,FSO对象模型中主要的5个对象:Drive对象:读取驱动器信息Folder对象:管理文件夹,读取文件夹信息Files对象:管理文件,读取文件信息TextStream对象:主要用于读写文件FileSystem Object对象:提供对驱动器、文件夹和文件的各种操作,核心对象。该对象建立在以上对象的基础之上,比如很多方法是复制了其它对象的方法,还提供方法创建生成以上对象。,File System Objects对象模型,使用类库(非可视化对象),FSO对象不是一个可见的控件对象,不能通过部件添加到工程中,需要引用类库(Class Library)类库示对象类的集合,可以为开发者提供大量制作好的可以直接使用的对象在工程中添加对象类引用“工程”菜单中,选择“引用”命令选定类库名称左边的复选框单击“确定”按钮,加载FSO对象模型,FSO对象模型包含在一个称为Scripting的类型库中,此类型库位于Scrrun.Dll文件中。要使用该类型库,必须首先在工程中引用此文件,操作方法如下:执行【工程】【引用】菜单命令,打开“引用”对话框;在对话框中的可引用类型库列表中选中“Microsoft Scripting Runtime”项并确定;使用“对象浏览器”可以查看其对象、集合、属性、方法、事件以及它的常数,同时在声明变量时,输入As关键字后,该类型库中的对象类型会自动显示在数据类型提示列表中。,该对象是FSO对象模型中的核心对象,FSO编程的主要步骤:(1) 在“工程|引用”中选择“Microsoft Scripting runtime”(2) 创建一个FileSystemObject对象(3)通过读取新对象的属性值获取信息(4)调用FileSystemObject对象中的方法来创建一个新的对象,如Files对象、Drive对象,FileSystemObject对象,方法一:使用New关键字Dim oFSO as FileSystemObject声明对象Set oFSO = New FileSystemObject 创建对象或 Dim oFSO as New FileSystemObject 声明并创建对象方法二:使用CreateObject函数Dim oFSO as FileSystemObject 声明对象Set oFSO=CreateObject(“Scripting.FileSystemObject”),创建一个FileSystemObject对象,对象其实就象C语言中的指针,声明时并没有空间,也没有内容,是一个空值。只有创建后才能使用(等同于让指针指向一个有意义的空间),【例】窗体加载后,输出系统各驱动器的容量和剩余可用空间。Private Sub Form_Load()Dim objFso As New FileSystemObjectDim strInfo As String, d On Error Resume Next For Each d In objFso.Drives strInfo = d.DriveLetter & : strInfo = strInfo & 全部空间= & d.TotalSize strInfo = strInfo & 可用空间= & d.AvailableSpace Debug.Print strInfo NextEnd Sub,访问驱动器,Drives属性:是一个驱动器对象的集合,即Drive对象的集合。Drive对象的主要属性有:AvailableSpace:驱动器上的可用空间DriveLetter:驱动器号(只读)DriveType:驱动器类型FileSystem:文件系统的类型FreeSpace:可用空间VolumnName:卷标名IsReady:是否准备好,FileSystemObject对象的属性,DriveExist方法:返回真存在,否则不存在 oFSO.DriveExists(“d”)(2) GetDrive方法:返回一个指定的Drive对象 set oDrive = oFSO.GetDrive(“c:”)(3) GetDriveName方法:从指定的路径名中返回驱动器名,但不检查是否存在oFSO.GetDriveName(“d:vb6”),使用FileSystemObject访问驱动器,文件夹本身的信息可以通过Folder对象来访问,部分文件夹的处理由FileSystemObject对象的方法来完成。Folder对象的主要属性:Attributes:设置或返回文件夹的属性。如只读、隐藏等DateCreated:返回创建日期和时间,是只读属性Drive:返回文件夹所在的驱动器符号,是只读属性Files:返回文件夹下由所有File对象组成的Files集合IsRootFolder:指定的文件夹是否是根文件夹Name:返回文件夹名,重新设置该属性意味着改名ParentFolder/SubFolders:返回指定文件夹的父/子文件夹对象Path:返回指定文件夹的路径Size:返回以字节为单位的包含在文件夹中所有文件和子文件夹的大小,访问文件夹,(1) FolderExist方法:返回真假值x = oFSO.FolderExist(“d:vb6samples”)(2) GetFolder方法:返回一个指定的Folder对象set oFoldert = oFSO.GetFolder(“d:vb6samples”) 当指定的文件夹不存在时,该方法会出错,FileSystemObject对象访问文件夹(一),【例】检查当前目录下是否存在文件夹myVB,并查看其大小:Dim objFso As New FileSystemObjectDim objFolder As Folder, FileName As StringFileName = App.path & “myVB”If objFso.FolderExists(FileName) Then Set objFolder = objFso.GetFolder(FileName) Debug.Print objFolder.SizeElse Debug.Print 该文件夹不存在!End If,访问文件夹示例,(1)CopyFolder方法:拷贝文件夹 oFSO.CopyFolder source, dest , overwrite(2)CreateFolder方法:创建文件夹 oFSO.CopyFolder foldername(3)DeleteFolder方法:删除文件夹 oFSO.DeleteFolder foldername ,force(4)MoveFolder方法:移动文件夹 oFSO.MoveFolder source, destination,FileSystemObject对象访问文件夹(二),(1) GetParentFolderName方法:获取父文件夹 set oFolder = oFSO.GetParentFolderName(p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中国传媒行业发展展望及投资策略报告
- 直播电商背景下海南免税店市场营销策略-以三亚国际免税城为例
- 四川省德阳市2025-2026学年高二上学期11月期中考试语文试卷
- 广西名校联考2025-2026学年高三上学期11月考试地理试卷
- 2025-2026年全球液压破碎锤十大品牌综合排名
- 2025年心肺运动试题答案及答案
- 湖北省华大新高考联盟2026届高三11月教学质量测评英语试卷(含答案)
- 2025年郑州旅游考试题库及答案
- 重庆应急预案编制公司(3篇)
- 法院执行考试题库及答案
- 2025衢州市市级机关事业单位第三期编外招聘39人笔试考试参考试题及答案解析
- 人教版八年级上册生物第五单元第一章综合实践项目 设计并制作生态瓶
- 山西某污水处理厂投资估算编制分析
- 2025全国医疗应急能力培训系列课程参考答案
- 江西体彩中心笔试题库及答案
- 网络安全技术课件下载
- 上海安保考试题目及答案
- 糖尿病专家培训课件
- 2025-2026学年深圳市罗湖区九年级(上)英语第一学期期中联考试卷(解析版)
- 独孤一箭实盘交割单 独股一箭20w实盘交割单
- 2025交管12123学法减分题库附含参考答案
评论
0/150
提交评论