设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> Visual Basic >> 在VB中使用文件对象
精品推荐
Visual Basic点击TOP10
·VB中使用EXCEL输出
·用vb实现DES加解密算法(三)--解密
·vsprint打印实例
·VB实现SQL Server数据库备份/恢复
·DirectX 7 编程初步
·用vb实现DES加解密算法(二)--加密
·VB 贪吃蛇 单人版游戏 (原作)
·如何在IE右键菜单中添加菜单项以及如何添加IE任务栏按钮
·VB6.0中通过MSChart控件调用数据库
·让VB应用程序支持鼠标滚轮
编程开发点击TOP10
·数字小键盘指法练习
·用C语言编通讯录程序(初学者级别的)
·ASP.NET 程序中常用的三十三种代码
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·java笔试题
·Modem 常用AT指令集
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

在VB中使用文件对象

作者: 来源:网络文章 时间:2005-12-13 18:10:26

在VB中使用文件对象(2)
Drive对象还有一些其他的属性,可以用对象浏览器来察看它所有属性。

除了可以遍历所有的驱动器,你也可以遍历某个文件夹下的所有文件。这在当你需要在整个驱动器中查找特定的文件的时候特别有用。Recursion is also very helpful in these cases since you need to keep performing the same action as you work your way down the tree. 下面这段代码用来统计所有GIF文件的个数。它也可以很容易的修改成文件列表,对特定的文件做指定的操作,等等。其中的关键在于目录数的遍历:
Option Explicit
Dim m_lngFileCount As Long '定义计数器
Dim m_objFSO As Scripting.FileSystemObject '定义文件系统对象

Sub Main()
Set m_objFSO = New Scripting.FileSystemObject
m_lngFileCount = 0
CheckFolder "C:\"
Debug.Print "C盘下GIF文件总数: " & m_lngFileCount
End Sub

Sub CheckFolder(strPath As String)
Dim objFolder As Scripting.Folder '文件夹对象
Dim objFile As Scripting.File '文件对象
Dim objSubdirs As Scripting.Folders '文件夹集合对象
Dim objLoopFolder As Scripting.Folder '文件夹对象

Debug.Print "Checking directory " & strPath
Set objFolder = m_objFSO.GetFolder(strPath)

' 检查目录中的文件
For Each objFile In objFolder.Files
If UCase$(Right$(objFile.ShortPath, 4)) = ".GIF" Then
'这一段是条件检查,但找到的文件是否符合给定的条件,这儿通过取文件名的
'最后4位看是不是“.GIF“来判断文件是否是GIF文件。
m_lngFileCount = m_lngFileCount + 1
'找到指定条件的文件后进行相应的操作,这儿是把计数器加一。
End If
Next objFile

' 在所有子目录中循环,计数。
Set objSubdirs = objFolder.SubFolders
For Each objLoopFolder In objSubdirs
CheckFolder objLoopFolder.Path
'递归调用CheckFolder子过程,实现目录树的遍历。
Next objLoopFolder

Set objSubdirs = Nothing
Set objFolder = Nothing

End Sub


为了简化这段代码,FileSystemObject对象和文件计数器都被定义为这个模块的全局变量(因此前面都加了m_前缀)。CheckFolder 子程序开始时用C:\ 作为入口参数,一旦找到一个符合条件的文件,就把计数值加一。检查完下面的所有文件后,再用其子目录作为参数调用CheckFolder过程本身。当所有的目录都被作为参数调用了之后,所有的文件也就被检查完了。这就是用递归遍历目录树的方法。所谓递归,就是过程直接或者间接的调用自身。最后,作为过程调用的结果,统计数字被Main过程显示出来。

只要把检验文件是否为GIF文件的部分换成其它的条件,再把计数的语句换成想要执行的语句块。每当找到符合条件的语句后,就会执行这个语句块。这样就可以很容易的把代码修改用于其它的用途。

如果你曾今用过Dir函数来实现同样的功能,那么你一定会感到用对象编程的方便之处。不论你是想检查文件属性,还是创建新的文件,或者其它任何关于文件的操作,新的文件对象都会为你节省不少时间,而且是代码更加易于理解。

共3页 9 7 [1] [2] [38 :>

在VB中使用文件对象 相关文章:
在VB中使用文件对象 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com