vb查找的那个程序有句话我理解不了

来源:百度知道 编辑:UC知道 时间:2024/05/26 04:14:57
---- VB开发人员都会遇到文件定位的问题。VB提供的Dir[(pathname[, attributes])]函数应该可以满足各种文件定位问题。使用Dir函数时,我们必须给它提供文件的全部路径,否则是找不到的。而有时我们往往是不知道文件的路径的,如果要利用该函数来定位文件,我们必须编写一定的代码。笔者在利用该函数编制查找文件的函数时,颇费了些工夫,可是发现查找的效率不高,效果不太理想。那么有没有编码少且更快的方法查找文件呢?笔者后来利用一个 API函数成功地编制了一个高效率的查找文件的函数。下面一一介绍给大家,起个抛砖引玉的作用,期望大家能编制出更高效的函数。

---- 一. 利用DIR函数查找文件

---- Dir[(pathname[, attributes])]是VB提供的用来检查某些文件或目录是否存在的函数,它返回一个 String,用以表示一个文件名、目录名或文件夹名称,返回值必须与指定的模式或文件属性、或磁盘卷标相匹配。

---- 如果文件的路径很清楚,那么确定文件是否存在简单地调用该函数就行了。如果光知道文件名,甚或只知道文件的后缀,要定位文件的话就需要一定的编码了。下面的例子用来定位c:\下所有目录内是否有文件Win.ini。

Function FindDirectory(RootPath As
String, Mydirectory() As String)
Dim intResult, I, intFind As Integer
‘首先查找根目录下的所有子目录
MyPath = "c:\" ' 指定路径c:\。
MyName = Dir(MyPath, vbDirectory) ' 找寻第一项。
intResult = 1
ReDim Mydirectory(intResult) ‘初始化动态数组
Do While MyName < > "" ' 开始循环。
' 跳过当前的目录及上层目录。
If MyName <

关键在这句:
MyName = Dir(MyPath, vbDirectory)
如果Dir函数中指定了 vbDirectory 参数,则当MyPath等于当前目录时返回值MyName=".",当MyPath等于当前目录的上层目录时返回值MyName=".."

Do While MyName < > "" ' 开始循环。
' 跳过当前的目录及上层目录。
If MyName < > "." And MyName < > ".." Then

程序代码段

end if
Loop

这句话的意思就是当所要查找的目录不等于当前目录或是当前目录的父目录(上层目录)时,条件才成立,进而执行 "程序代码段"

注:"."在Dos中表示的是当前目录,".."表示父目录或上层目录

这好像是不等于!